JSP中的Cookie详解编程语言

若何建立Cookie 

先引包:

import=”javax.servlet.http.Cookie”

JSP是利用如下的语法花样来建立cookie的:

Cookie cookie_name =new Cookie(“Parameter”,”Value”);

例如:
Cookie username_Cookie =new Cookie(“username”,”SMN”); 

cookie.setMaxAge(10);   //存活期为10秒

response.addCookie(username_Cookie);

  注释:JSP是挪用Cookie对象响应的组织函数Cookie(name,value)用合适的名字和值来建立Cookie,然后Cookie可以经由过程HttpServletResponse的addCookie方式到场到Set-Cookie应答头,本例中Cookie对象有两个字符串参数:username,SMN。留意,名字和值都不克不及包含空白字符以及下列字符:@ : ;? , ” / [ ] ( ) = 

处置惩罚Cookie的属性

类型 方式名 方式注释
String getComment() 返回cookie中注释,假如没有注释的话将返回空值.
String getDomain() 返回cookie中Cookie合用的域名. 利用getDomain() 方式可以指示浏览器把Cookie返回给同 一域内的其他办事器,而平日Cookie只返回授与发送它的办事器名字完全沟通的办事器。留意域名必需以点最先(例如.yesky.com)
int getMaxAge() 返回Cookie过时之前的最年夜时候,以秒较量争论。
String getName() 返回Cookie的名字。名字和值是我们始终关心的两个部门,笔者会在后面具体介绍 getName/setName。
String getPath() 返回Cookie合用的路径。假如不指定路径,Cookie将返回给当前页面地点目次及其子目次下 的所有页面。
boolean getSecure() 假如浏览器经由过程平安和谈发送cookies将返回true值,假如浏览器利用尺度和谈则返回false值。
String getValue() 返回Cookie的值。笔者也将在后面具体介绍getValue/setValue。
int getVersion() 返回Cookie所顺从的和谈版本。
void setComment(String purpose) 设置cookie中注释。
void setDomain(String pattern) 设置cookie中Cookie合用的域名
void setMaxAge(int expiry) 以秒较量争论,设置Cookie过时时候。
void setPath(String uri) 指定Cookie合用的路径。
void setSecure(boolean flag) 指出浏览器利用的平安和谈,例如HTTPS或SSL。
void setValue(String newValue) cookie建立后设置一个新的值。
void setVersion(int v) 设置Cookie所顺从的和谈版本。  

读取客户端的Cookie 

JSP将挪用request.getCookies()从客户端读入Cookie,getCookies()方式返回一个HTTP请求头中的内容对应的Cookie对象数组。你只需要用轮回接见该数组的各个元素,挪用getName方式搜检各个Cookie的名字,直至找到目的Cookie,然后对该Cookie挪用getValue方式取得与指命名字联系关系的值。

例如:

<% 
   //从提交的HTML表单中获取,用户名 
   String userName=request.getParameter("username"); 
 
   //以"username", userName 值/对 建立一个Cookie 
   Cookie theUsername=new Cookie("username",userName); 
 
   response.addCookie(theUsername); 
  %> 
  .............. 
  <% 
   Cookie myCookie[]=request.getCookies();//建立一个Cookie对象数组 
 
   for(int n=0;n=cookie.length-1;i++){//设立一个轮回,来接见Cookie对象数组的每一个元素 
 
   Cookie newCookie= myCookie[n]; 
 
   if(newCookie.getName().equals("username")); //判定元素的值是否为username中的值 
    {%> 
     你好,<%=newCookie.getValue()%>!//假如找到后,向他问好 
    <%}
  }   %
>

设置Cookie的存在时候,及删除Cookie

利用setMaxAge(int expiry)方式来设置Cookie的存在时候,参数expiry应是一个整数。正值透露表现cookie将在这么多秒今后掉效。留意这个值是cookie将要存在的最年夜时候,而不是cookie如今的存在时候。负值透露表现当浏览器封闭时,Cookie将会被删除。零值则是要删除该Cookie。

<%
   Cookie deleteNewCookie=new Cookie(“newcookie”,null); //newcookie是要删除的cookie的名字
   deleteNewCookie.setMaxAge(0); //删除该Cookie
   response.addCookie(deleteNewCookie);
%> 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/11712.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论