JAVA通过Session和Cookie实现网站自动登录的技术

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                 本方案为我这个站点当前使用的,能用,但不保证是最先进的。
原文:http://www.java2000.net/p1010

第一步,登陆的时候一旦选择了[自动登录]的选项,则需要在登陆成功后,附加下面的代码
应为一般网站都提供保存用户名的功能,所以我把这个写到了外面。只有密码是单独处理的。
其中的host就是你的域名
login.jsp

 
  1. String host = request.getServerName();  
  2. Cookie cookie = new Cookie("SESSION_LOGIN_USERNAME", username); // 保存用户名到Cookie  
  3. cookie.setPath("/");  
  4. cookie.setDomain(host);  
  5. cookie.setMaxAge(99999999);  
  6. response.addCookie(cookie);  
  7. if (ParamUtils.getBooleanParameter(request, "savePassword")) {  
  8.   // 保存密码到Cookie,注意需要加密一下  
  9.   cookie = new Cookie("SESSION_LOGIN_PASSWORD", MD5.encode(u.getPassword()));  
  10.   cookie.setPath("/");  
  11.   cookie.setDomain(host);  
  12.   cookie.setMaxAge(99999999);  
  13.   response.addCookie(cookie);  
  14. }  
        String host = request.getServerName();        Cookie cookie = new Cookie("SESSION_LOGIN_USERNAME", username); // 保存用户名到Cookie        cookie.setPath("/");        cookie.setDomain(host);        cookie.setMaxAge(99999999);        response.addCookie(cookie);        if (ParamUtils.getBooleanParameter(request, "savePassword")) {          // 保存密码到Cookie,注意需要加密一下          cookie = new Cookie("SESSION_LOGIN_PASSWORD", MD5.encode(u.getPassword()));          cookie.setPath("/");          cookie.setDomain(host);          cookie.setMaxAge(99999999);          response.addCookie(cookie);        }



这样,Cookie就生成了
第二步,在用户访问网站的时候,如果检测到没有登陆,则进行下面的判断。
index.jsp
 
  1. String usernameCookie = null;  
  2. String passwordCookie = null;  
  3. Cookie[] cookies = request.getCookies();  
  4. if (cookies != null) {  
  5.   for (Cookie cookie : cookies) {  
  6.     if ("SESSION_LOGIN_USERNAME".equals(cookie.getName())) {  
  7.       usernameCookie = cookie.getValue(); // 得到cookie的用户名  
  8.     }  
  9.     if ("SESSION_LOGIN_PASSWORD".equals(cookie.getName())) {  
  10.       passwordCookie = cookie.getValue(); // 得到cookie的密码  
  11.     }  
  12.   }  
  13.   if (usernameCookie != null && passwordCookie != null) { // 如果存在  
  14.     if(Login.checkLogin(usernameCookie ,passwordCookie)){  
  15.       // 登陆成功的处理  
  16.     }else{  
  17.        // 登陆不成功的处理  
  18.     }  
  19.   }  
  20. }  
    String usernameCookie = null;    String passwordCookie = null;    Cookie[] cookies = request.getCookies();    if (cookies != null) {      for (Cookie cookie : cookies) {        if ("SESSION_LOGIN_USERNAME".equals(cookie.getName())) {          usernameCookie = cookie.getValue(); // 得到cookie的用户名        }        if ("SESSION_LOGIN_PASSWORD".equals(cookie.getName())) {          passwordCookie = cookie.getValue(); // 得到cookie的密码        }      }      if (usernameCookie != null && passwordCookie != null) { // 如果存在        if(Login.checkLogin(usernameCookie ,passwordCookie)){          // 登陆成功的处理        }else{           // 登陆不成功的处理        }      }    }
是不是很简单





<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

这里写图片描述

猜你喜欢

转载自blog.csdn.net/jgfyyfd/article/details/83584070