(七)用户登陆
步骤分析: 1.在index.jsp上登录连接 点击 跳转到login.jsp 可以通过userservlet进行请求转发 loginUI 2.修改页面上的form表单 method 每个标签添加name属性 action:/store/user?method=login 3.login操作: 获取用户名和密码 调用service 获取一个user 判断用户是否为空 若为空: 若不为空 继续判断是否激活 只有激活的时候,将用户放入session中 4.页面重定向到首页上 展示用户名 退出 我的订
前端
/store/src/com/louis/constant/Constant.java
package com.louis.constant; public interface Constant { //用户激活 int USER_IS_ACTIVE=1; }
/store/src/com/louis/web/servlet/UserServlet.java
/* * 跳转到登陆界面 * */ public String loginUI(HttpServletRequest request, HttpServletResponse response) throws Exception { return "/jsp/login.jsp"; } /* * 登陆 * */ public String login(HttpServletRequest request, HttpServletResponse response) throws Exception { //1、获取用户名和密码 String username = request.getParameter("username"); String password = request.getParameter("password"); password = MD5Utils.md5(password); //2调用service完成登陆操作,返回user UserService userService = new UserServiceImpl(); User user = userService.login(username,password); //3、判断用户 if(user == null) { //用户名密码不匹配 request.setAttribute("msg", "用户名密码不匹配"); return "/jsp/login.jsp"; }else { //判断用户是否激活 if(Constant.USER_IS_ACTIVE!=user.getState()) { request.setAttribute("msg", "用户未激活"); return "/jsp/login.jsp"; } } //4将user放入session中重定向 request.getSession().setAttribute("user", user); //store首页 response.sendRedirect(request.getContextPath()+"/"); return null; }
/store/src/com/louis/service/impl/UserServiceImpl.java
@Override public User login(String username, String password) throws Exception { UserDao dao=new UserDaoImpl(); return dao.getByUsernameAndPwd(username,password); }
/store/src/com/louis/dao/impl/UserDaoImpl.java
/* * 用户登陆 * */ public User getByUsernameAndPwd(String username, String password) throws Exception { QueryRunner qr = new QueryRunner(DataSourceUtils.getDataSource()); String sql="select * from user where username = ? and password = ? limit 1"; return qr.query(sql, new BeanHandler<>(User.class), username,password); }
效果
问题
1、自动登陆的实现
2、什么时候重定向?什么时候转发?
共用同一个域用转发,使用不同的域用重定向
posted on 2017-10-09 00:44 Michael2397 阅读(216) 评论(0) 编辑 收藏 举报