Java中Servlet Cookie设置过期时间(expires,max-age)

expires或者max-age指定了coolie的生存期,默认情况下coolie是暂时存在的,他们存储的值只在浏览器会话期间存在,当用户推出浏览器后这些值也会丢失,如果想让cookie存在一段时间,就要为expires属性设置为未来的一个过期日期。expires现在已经被max-age属性所取代,max-age用秒来设置cookie的生存期。

设置cookie过期时间

cookie = new Cookie("cookiename","cookievalue");
//设置Cookie最大生存时间,以秒为单位,负数的话为浏览器进程,关闭浏览器Cookie消失 
cookie.setMaxAge(3600);//设置cookie过期时间为1个小时
//设置路径,这个路径即该工程下都可以访问该cookie 如果不设置路径,那么只有设置该cookie路径及其子路径可以访问
cookie.setPath("/");
// 将Cookie添加到Response中,使之生效 
response.addCookie(cookie);

设置cookie名称,值,过期时间方法

/**  
 * 设置cookie  
 * @param response  
 * @param name  cookie名字  
 * @param value cookie值  
 * @param maxAge cookie生命周期  以秒为单位  
 */  
public static void addCookie(HttpServletResponse response,String name,String value,int maxAge){  
    Cookie cookie = new Cookie(name,value);  
    cookie.setPath("/");  
    if(maxAge>0)  cookie.setMaxAge(maxAge);  
    response.addCookie(cookie);  
}

版权声明:本文为JAVASCHOOL原创文章,未经本站允许不得转载。