日期:2014-05-19 浏览次数:20568 次
HttpServletRequest request = ServletActionContext.getRequest(); Cookie cookies[]=request.getCookies(); String login=null; String password=null; for (int i = 0; i < cookies.length; i++){ //取最后一次我保存的 if(cookies[i].getName().equals("userName")){ login = cookies[i].getValue(); } if (cookies[i].getName().equals("password")){ password = cookies[i].getValue(); break; } } if(!AssertUtil.isEmpty(login)&&!login.equals("JSESSIONID")){ request.setAttribute("login", login); request.setAttribute("password", password); }
------解决方案--------------------
cookie
先在校验页面创建
<%@ page contentType="text/html" pageEncoding="GBK"%> <%@ page import="org.xiong.demo.vo.*,org.xiong.demo.factory.*"%> <% request.setCharacterEncoding("GBK"); String rand = (String) session.getAttribute("rand"); String userName = request.getParameter("username"); String userPass = request.getParameter("password"); String code = request.getParameter("code"); long cookieTime = 0; try { cookieTime = Long.parseLong(request.getParameter("saveTime")); } catch (Exception ex) { } %> <% //判断用户名密码是否为空 if (("".equals(userName) || null == userName) || ("".equals(userPass) || null == userPass)) { request.setAttribute("errMsg", "用户名或密码不能为空!"); %> <jsp:forward page="login.jsp" /> <% } %> <% //判断验证码是否正确 if (!code.equalsIgnoreCase(rand)) { request.setAttribute("errMsg", "输入的验证码不正确"); %> <jsp:forward page="login.jsp" /> <% } %> <% RegisterUser user = new RegisterUser(); user.setUsername(userName); user.setPassword(userPass); boolean flag = false; if (DaoFactory.getUserDaoInstance().findLongin(user)) { session.setAttribute("username", userName); Cookie c1 = new Cookie("username", userName); Cookie c2 = new Cookie("password", userPass); c1.setMaxAge((int) cookieTime); c2.setMaxAge((int) cookieTime); response.addCookie(c1); response.addCookie(c1); flag = true; } else { request.setAttribute("errMsg", "用户名或密码不正确!"); } %> <% if (flag) { %> <jsp:forward page="welcome.jsp" /> <% } else { %> <jsp:forward page="login.jsp" /> <% } %>