javaweb实现记住密码功能
2016-02-02 00:00
507 查看
具体思路是,如果用户勾选了记住密码那个框,那么肯定有是否勾选框的一个标志参数传递到后台
根据参数,决定是否将用户名和密码存到cookie中
从cookie中获取存入的值
取出来时进行遍历,然后用if判断cookie.getName() equals 自己当初写的username和password去获取对应的value,然后直接作为数据与数据库进行匹配,匹配成功后直接跳转登陆后的界面。还是讲具体点吧
最后,清楚cookie的方法如下,要注意的是setMaxAge为0后并不能清楚cookie,调试的时候发现,取出来的cookie中只有name和value中有值,而对于的path值都是null,原先设置了path为/,所以这里得重新设置一下,而且最后还得add到response中去。3个部分缺一不可。
根据参数,决定是否将用户名和密码存到cookie中
String username = "llllll"; String password = "2323232"; Cookie username_c = new Cookie("username", username); Cookie password_c = new Cookie("password",password); username_c.setPath("/"); password_c.setPath("/"); //这里不设置一下路径发现最后的cookie总是保存后取不出来 username_c.setMaxAge(60*60*7);//这里是按秒为单位的 password_c.setMaxAge(60*60*7); response.addCookie(username_c); response.addCookie(password_c);
从cookie中获取存入的值
Cookie myCookie[]=request.getCookies(); for (Cookie cookie : myCookie) { System.out.println(cookie.getValue()); }
取出来时进行遍历,然后用if判断cookie.getName() equals 自己当初写的username和password去获取对应的value,然后直接作为数据与数据库进行匹配,匹配成功后直接跳转登陆后的界面。还是讲具体点吧
String username_cstr = null; String password_cstr = null; // 判断用户是否已经记住密码 Cookie myCookie[] = request.getCookies(); if (myCookie != null) { for (Cookie cookie : myCookie) { if ("username".equals(cookie.getName())) { username_cstr = cookie.getValue(); session.setAttribute("username", username_cstr); } if ("password".equals(cookie.getName())) { password_cstr = cookie.getValue(); } } }从cookie中取出对应的username和password,然后用这2个值去数据库进行查询操作,跟登录校验的操作是一样的。如果数据库匹配成功,则直接跳过登录页面到已经登录过后的主页,其实上面这部分校验应该写在项目的第一次跳转中,即所谓的index界面。具体例子大家参考一下www.csdn.net的记住密码功能就能理解了。
最后,清楚cookie的方法如下,要注意的是setMaxAge为0后并不能清楚cookie,调试的时候发现,取出来的cookie中只有name和value中有值,而对于的path值都是null,原先设置了path为/,所以这里得重新设置一下,而且最后还得add到response中去。3个部分缺一不可。
Cookie myCookie[] = request.getCookies(); if (myCookie != null) { for (Cookie cookie : myCookie) { if ("rmuername".equals(cookie.getName())||"rmpassword".equals(cookie.getName())) { cookie.setMaxAge(0); cookie.setPath("/"); response.addCookie(cookie); } } }
相关文章推荐
- javaWeb服务器端开发事项
- 详谈javaWeb分页的实现(模拟百度分页)
- Java多线程编程
- Eclipse 运行Java项目JRE VM配置
- Spring MVC返回中文乱码
- JAVA-异常处理
- Java初学笔记
- java List集合类的用法
- JAVA中的几种设计模式
- JAVA中接口与抽象类的区别
- java常用数据类型
- MyEclipse添加ibatis DTD文件实现xml的自动提示功能
- Java NIO读书笔记2
- JAVA中的多态性
- 本地方法(JNI)——调用 java 方法
- Struts2-01-HelloWolrd
- Java Map简单使用
- 本地方法(JNI)——编码签名
- java中的内部类总结
- Java基础:数据类型(Data type)