Java Session对象的钝化和活化
Java Session对象的钝化和活化
钝化和活化的本质是序列化和反序列化
钝化:将内存中的session对象存储到硬盘,防止会话结束后session遗失。
活化:钝化的逆过程,读取硬盘中的session对象于内存中。
实现钝化的操作步骤如下:
1.配置apache-tomcat-9.0.27\conf\context.xml文件
<Manager className="org.apache.catalina.session.PersistentManager" maxIdleSwap="2"><Store className="org.apache.catalina.session.FileStore" directory="pow" /></Manager>
上面的maxIdleSwap是最大时间限制,单位是秒,超过了这个时间,内存中的session对象,会自动的存储到directory指定的目录:apache-tomcat-9.0.27\work\Catalina\localhost\该项目\pow中。
2.创建一个监听器,并实现HttpSessionActivationListener,Serializable这两个接口
第一个接口实现监听(钝化和活化)的功能,第二个接口实现反序列化(活化)。
特别说明一下:该监听器不需要额外的配置web.xml.
public class A implements HttpSessionActivationListener,Serializable{private String key;
public String setKey(String key){this.key = key ;
}
public String getKey(){return key;
}
@Overridepublic void sessionDidActivate(HttpSessionEvent se) {System.out.println("活化完成!!!");}@Overridepublic void sessionWillPassivate(HttpSessionEvent se) {System.out.println("钝化完成!!!");}
}
3.我们现在就可以通过jsp将上面的实例化对象放入session中
<body>
钝化页面:<%A a = new A();a.setKey("卢泽龙大帅比");session.setAttributte("a",a);%>
</body>
运行上面的jsp过了一段时间就会看见控制台提示钝化完成!!
此时apache-tomcat-9.0.27\work\Catalina\localhost\该项目中可以看见新创建的文件夹pow。
4.验证(调用硬盘里面的session):
<body>
活化页面:<br/>
key的值为${sessionScope.a.key}
</body>
结果很成功的取出key值为“卢泽龙大帅比”,并且控制台打印出活化完成!
这些只是在下的片面理解,如有不对还望大佬指教!
Java Session对象的钝化和活化相关推荐
- Session 的钝化与活化
(一)钝化 当服务器正常关闭时,还存活着的session(在设置时间内没有销毁) 会随着服务器的关闭被以文件("SESSIONS.ser")的形式存储在tomcat 的work 目 ...
- JavaWeb-WEB核心7 会话技术 理解什么是会话跟踪技术掌握Cookie的使用掌握Session的使用(钝化、活化)完善用户登录注册案例的功能
会话技术 今日目标 理解什么是会话跟踪技术 掌握Cookie的使用 掌握Session的使用 完善用户登录注册案例的功能 1,会话跟踪技术的概述 对于会话跟踪这四个词,我们需要拆开来进行解释,首先要理 ...
- 对于session序列化跟session的钝化与活化的粗浅理解
1. API对序列化的解释:类通过实现 java.io.Serializable 接口以启用其序列化功能.未实现此接口的类将无法使其任何状态序列化或反序列化.可序列化类的所有子类型本身都是可序列化的. ...
- session的钝化和活化
钝化:内存->硬盘 活化:硬盘->内存 session对象的四种状态: 1.session.setAttribute("a",xxx),将对象a绑定到session中 ...
- java中的session对象,Java对象中Response与session对象的方法是什么?
广州达内Java培训小编了解到Java对象种类很多,有的小伙伴最不清楚的就是Response与session对象的方法,下面小编就搜集Response与session对象的方法供大家阅读.当一个客户首 ...
- Java web—Cookie与Session对象
接着上篇的Servlet总结,本篇文章来总结下 Cookie 和 Session 一.会话介绍 1.什么是会话? 从打开浏览器,到访问页面,到最终关闭浏览器 ,整个过程就是一次会话 2.会话的特性: ...
- java中session对象登录_JavaWeb中Session对象的学习笔记
一.Session简单介绍 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下).因此,在需要保存用户数据时,服务 ...
- [原创]java WEB学习笔记94:Hibernate学习之路---session 的管理,Session 对象的生命周期与本地线程绑定...
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- 06CookieSession-12. HttpSession的钝化和活化
(一)钝化 当服务器正常关闭时,还存活着的session(在设置时间内没有销毁) 会随着服务器的关闭被以文件("SESSIONS.ser")的形式存储在tomcat 的work 目 ...
- session 对象的简单实例
一个session对象的简单实例: 1.登录界面:使用简单的html表单提交界面. <%@ page language="java" contentType="te ...
最新文章
- 0x35.数论 - 组合数学与计数
- erlang-百度云推送Android服务端功能实现-erlang
- 802.11协议中的action帧的使用
- 福利|PMCAFF问答专家群-社区大咖聚集地
- Tomcat 的类加载机制
- C++ 专题:陈皓:Why C++? 王者归来
- APP技巧:盘点微信去年更新的9个更新功能,你都知道吗?
- android @style/name,android style和attr的用法
- 全国计算机统考在线模拟网站,全国计算机统考模拟试题
- Codeblocks下载安装使用教程
- 微信一键激活 设置开卡字段
- 移动设备管理的具体措施有哪些?(下)
- java实现中文转拼音包含声调
- matlab 光平面标定代码,光平面标定法
- safenet 超级狗 加密狗
- RFC5731 - 中文翻译(原创)
- 右键没有WinRAR压缩的解决方法
- 全球排名前四的眼药水,第一款来自欧洲老牌安瞧AGEPHA Pharma,眼科医生自留!
- Virustotal的使用
- WML信息查询与后端信息发布系统实现-java -(报告+源码)