zoukankan      html  css  js  c++  java
  • jsp创建cookie

    <jsp:include flush="true" page="header.jsp" />
    <script type="text/javascript">
    	alert("add cookie");
    	<%
    		Cookie cookie=null;
    		String cas_user = "no";
    		if(request.getCookies()!=null)
    			cookie=null;
    		cookie = new Cookie("cas_bbs_sso",cas_user);
    		cookie.setPath("/");
    		response.addCookie(cookie);
    	%>
    </script>
    

      

    在jsp页面创建cookie,代码当然很简单,但是,需要注意一点的是:如果,jsp页面存在嵌套,则必须把创建cookie的代码写在

    <jsp:include flush="true" page="header.jsp" />的外面,上面也好,下面也行,但是,每个人的应用都不一样,样式也不一样,有时候,添加在inclue的前面,会造成些页面的样式不一样,我的就出现了这样的问题,需要注意点。以下引用来自:http://wenson.iteye.com/blog/99098

    无论怎样添加Cookie,在引用Cookie的时候只得到名称为JSESSIONID,值为一个无序字符串的Cookie,且从客户端获得的Cookie数组长度为1,说明手工添加的Cookie并没有成功保存到客户端。反复尝试了N次,在网上查看了很多这方面的帖子,都没有找到答案。最后终于发现,如果将创建Cookie的语句放在<jsp:include page="includeshead.jsp" flush="true" />(代码的头部有这条语句)的下面,Cookie将添加失败,反之则添加成功。而我们得到的名称为JSESSIONID实际上服务器端保存在客户端的SESSION(会话),它的值就是服务器随机分配的唯一的SESSION-ID,用以保持http连接的有效性。SESSION实际上是以Cookie的形式保存在客户端的,SESSION和Cookie的不同之处在于,SESSION保存在浏览器所用的内存空间中,而Cookie保存在客户端的硬盘上。页面的关闭不会释放SESSION,只有当客户端的浏览器关闭时,SESSION才会被释放。对于Cookie,它的声明周期取决与服务器端对Cookie.setMaxAge()的这一设置,否则将一直保存在硬盘上,直至超出有效期或被人工清除。

  • 相关阅读:
    自定义word快捷键,设置插入图片快捷键
    python使用ftplib做ftp操作
    各浏览器的userAgent对照表
    python判断字符串
    python判断字符串
    apache日志信息详解
    apache日志信息详解
    apache日志信息详解
    linux 下 读取某个文件的某一行或者某几行
    linux 下 读取某个文件的某一行或者某几行
  • 原文地址:https://www.cnblogs.com/youngjoy/p/3247870.html
Copyright © 2011-2022 走看看