HttpSession 的创建、销毁与过期时间

来源:互联网 发布:去他妈的全世界 知乎 编辑:程序博客网 时间:2024/06/05 14:57
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" session="false"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
//session 的创建, request.getSession() 相当于 request.getSession(true)
HttpSession session = request.getSession();

//获取sessionID
out.print(session.getId());
out.print("<br>");

//cookie 的name 属性得为:JSESSIONID, HttpSession 默认创建的cookie
Cookie cookie = new Cookie("JSESSIONID",session.getId());
cookie.setMaxAge(30);
response.addCookie(cookie);

//session 的销毁(并不是关闭浏览器就等于销毁了HttpSession)
//一、session.invalidate();
session.invalidate();

//二、服务器卸载了当前WEB 应用
//三、超出了HttpSession 的过期时间(单位为秒)
//默认的过期时间为1800秒。可在tomcat/conf/web.xml 中进行设置,单位为分钟
out.print("HttpSession 默认的过期时间为:"+session.getMaxInactiveInterval());
out.print("<br>");
//设置新的HttpSession 的过期时间:
session.setMaxInactiveInterval(5);
out.print("新的过期时间为:"+session.getMaxInactiveInterval());
out.print("<br>");
%>
</body>
</html>
1 0