jsp与servlet之间的cookie技术

Posted xiaoshenbanzht

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsp与servlet之间的cookie技术相关的知识,希望对你有一定的参考价值。

1.servlet中编写cookie

//使用cookie实现自动登录功能
//1.用户登录成功,写cookie信息到客户端中
//1.1构造一个cookie对象
Cookie cookie=new Cookie("user",account!=null?cookieUser:account);
cookie.setPath("/");//设置cookie在服务器的生效路径
cookie.setMaxAge(60);//设置有效时间/过期时间
//1.2把cookie发生到客户端,浏览器接收到cookie后,会写入到浏览器缓存中
response.addCookie(cookie);
//1.3当浏览器再次打开本网站时,浏览器会读取有效的cookie信息发送到服务器

2.jsp中编写读取cookie功能

    function getCookie(c_name)
    {
    if (document.cookie.length>0)
      {
      c_start=document.cookie.indexOf(c_name + "=")
      if (c_start!=-1)
        { 
        c_start=c_start + c_name.length+1 
        c_end=document.cookie.indexOf(";",c_start)
        if (c_end==-1) c_end=document.cookie.length
        return unescape(document.cookie.substring(c_start,c_end))
        } 
      }
    return ""
    }
    
    //使用javascript判断当前用户是否登录成功,如果登录成功则隐藏登录表单,否则显示登录表单
    if(""!=getCookie("user")){
        document.getElementById("loginForm").style.display="none";
        document.getElementById("showLogin").style.display="block";
        document.getElementById("loginUser").innerhtml="<a href=‘loginservlet‘>"+getCookie("user")+"</a>";
    }
    </script>

3.servlet中编写读取cookie的功能

Cookie[] cookies = request.getCookies();
String cookieUser=null;
for(Cookie cookie : cookies){
    if("user".equals(cookie.getName())){
    cookieUser=cookie.getValue();
    break;
    }
}

 


以上是关于jsp与servlet之间的cookie技术的主要内容,如果未能解决你的问题,请参考以下文章

JavaEE实战——会话与状态 Cookie_Session

JavaEE实战——会话与状态 Cookie_Session

jsp学习与提高——JSP Cookie 处理

JSP学习-07Cookie 与Session

cookie和session

JSP学习 —— 开篇:JSP,servlet容器,Tomcat,servlet容器之间的关系