3_32江_0617—service

9 篇文章 0 订阅

3_32江_0617—service


1、IUserService接口

public interface IUserService {
    public User validataUser(String loginName, String loginPwd);
    public boolean save(User user);
}

2、UserService类

public class UserService implements IUserService {
    private IUserDao dao = new UserDao();
    @Override
    public User validataUser(String loginName, String loginPwd) {
        User user = dao.findByLoginName(loginName);
        if(user != null){
            String str = user.getSalt() + loginPwd;
            String encStr = MD5.create().digestHex(str);
            if(encStr.equals(user.getLoginPwd())){
                user.setLoginPwd(null);
                user.setSalt(null);
            }else{
                user = null;
            }
        }
        return user;
    }

    @Override
    public boolean save(User user) {
        boolean ret = false;
        if(user != null){
            if(user.getId() == null || user.getId() == 0){
                // 新加
                user.setSalt(StrUtil.randomString(32,3));
                String np = user.getSalt() + user.getLoginPwd();
                user.setLoginPwd(MD5.create().digestHex(np));
                return dao.insert(user);
            }else{
                // 修改
                if(!StrUtil.isBLank(user.getLoginPwd())){
                    user.setSalt(StrUtil.randomString(32,3));
                    String np = user.getSalt() + user.getLoginPwd();
                    user.setLoginPwd(MD5.create().digestHex(np));
                }
                return dao.update(user);
            }
        }
        return ret;
    }
  }

3、LoginController类


@WebServlet("/Login")
public class LoginController extends HttpServlet {
    private IUserService service = new UserService();
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.getRequestDispatcher("./WEB-INF/view/manage/login.jsp").forward(req,resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String loginName = req.getParameter("loginName");
        String loginPwd = req.getParameter("loginPwd");
        String validCode = req.getParameter("validCode");

        String code = (String)req.getSession().getAttribute("code");
        String msg = null;
        if(!StrUtil.isBLank(validCode)){
            if(validCode.equals(code)){
                // model
                User user = service.validataUser(loginName, loginPwd);
                if(user != null){
                    req.getSession().setAttribute("user", user);
                    req.getSession().setAttribute("msg",msg);
                    resp.sendRedirect("./main");
                }else{
                    msg = "账号名或密码错误 " ;
                    req.getSession().setAttribute("msg",msg);
                }
            }else{
                msg = "验证码错误";
                req.getSession().setAttribute("msg",msg);
            }
        }else{
            msg = "请输入验证码!";
            req.getSession().setAttribute("msg",msg);
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值