SESSION活化与钝化
一.SESSION的创建机制
当客户端第一次访问JSP或者servlet页面时会自动创建session,如访问的是html等静态资源是不会创建的,可通过request.getSession(true)强制创建session,如果session存在此方法则返回session,如果不存在session,该方法则创建一个新的session并返回
二.SESSION的生命周期
2.1)session销毁的两种机制
1.当成功调用session.invalidate()方法
2.SESSION距离上一次调用已经超时,SESSION的时间默认生命周期是30分钟,可在WEB.XML中进行配置
<session-config>
<session-timeout>30</session-timeout>
</session-config>
注:当你项目的web.xml中没有设置session的生命周期时间,会自动继承整个tomcat服务器中的web.xml中关于session有效期的配置,单位为分钟
三.SESSION的钝化与活化
注:如果SESSION中存储了对象,该对象需要实现序列化接口
public class User implements Serializable
序列化的储存路径(SESSIONS.ser即为session序列化后存储在磁盘中的临时文件):
"tomcat安装目录"\work\Catalina\localhost\"项目名"(和org文件夹同目录)
四.找不到序列化文件的原因
1.在手动停止服务器的时候要在Servers中停止,在控制台Console中停止是不会立即生效停止操作的
2.对象没有实现序列化接口 Serializable
3.SESSION已经超过web.xml中配置的过期时间,SESSION已被销毁