3、实现注册

**功能一:用户注册功能**
    
    1. 可以先判断登录名是否已经存在
    2. 要给密码使用MD5进行加密操作

 

1、导入md5工具类

package com.louis.utils;

import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class MD5Utils {
    /**
     * 使用md5的算法进行加密
     */
    public static String md5(String plainText) {
        byte[] secretBytes = null;
        try {
            secretBytes = MessageDigest.getInstance("md5").digest(
                    plainText.getBytes());
        } catch (NoSuchAlgorithmException e) {
            throw new RuntimeException("没有md5这个算法!");
        }
        String md5code = new BigInteger(1, secretBytes).toString(16);// 16进制数字
        // 如果生成数字未满32位,需要前面补0
        for (int i = 0; i < 32 - md5code.length(); i++) {
            md5code = "0" + md5code;
        }
        return md5code;
    }

    public static void main(String[] args) {
        System.out.println(md5("123"));
    }

}

com.louis.web.action

/**
     * 注册功能
     * @return
     */
    public String regist(){
        userService.save(user);
        return LOGIN;
    }

/crm/src/com/louis/service/UserServiceImpl.java

    /**
     * 保存用户,密码需要加密
     */
    public void save(User user) {
        String pwd = user.getUser_password();
        // 给密码加密
        user.setUser_password(MD5Utils.md5(pwd));
        // 用户的状态默认是1状态
        user.setUser_state("1");
        // 调用持久层
        userDao.save(user);
    }

/crm/src/com/louis/dao/UserDaoImpl.java

/**
     * 保存用户
     */
    public void save(User user) {
        this.getHibernateTemplate().save(user);
    }

/crm/src/struts.xml

    <!-- 配置全局的结果页面 -->
        <global-results>
            <result name="login" type="redirect">/login.jsp</result>
        </global-results>

 

 /crm/WebContent/WEB-INF/web.xml

    <!-- 程序出现了500的异常,跳转到error.jsp的页面 -->
    <error-page>
        <error-code>500</error-code>
        <location>/jsp/error.jsp</location>
    </error-page>

 

问题

service上为什么要加@transactional

posted on 2017-10-21 20:11  Michael2397  阅读(122)  评论(0编辑  收藏  举报

导航