很多网站的登录页面都有“记住登录状态”的选项,这个功能怎么实现啊?表示不懂,拜托给位高手指点迷津啦!
------解决方案--------------------
使用cookie可以保存的。一下是例子,仅供参考。
- Java code
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
先在校验页面创建
- HTML code
<%@ 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" /><% }%>