session的序列化
服务器关闭后,会在服务器保存一个session.ser的文件,把session的属性和值保存起来,再次开启服务器后,又可以使用。
->保存的文件是sessions.ser
-> 使序列化无效的方法
context.xml中添加以下代码:
<Manager pathname="" />`
session的钝化和活化
一些session在一段时间不被使用时,就会被保存到硬盘里,减少内存的占用,
当再次使用的时候,就会直接从硬盘里加载到内存中,成为session的钝化和活化。
配置
tomcat/conf/catalina/localhost 如果写在context.xm则对所有项目都生效。
<context>
<Manager className="org.apache.catalina.session.PersistentManager" maxIdleSwap="1"> <!--maxIdleSwap="1"单位是分钟,最小一分钟,session多长时间不用会被钝化-->
<store className="org.apache.catalina.session.FileStore" directory="mysession" />
<!--文件保存器 一个文件一个session,文件名是session的id directory-> 保存目录-->
<!-- 就算是重新活化,文件也不会被删除。-->
</context>