00:00
好,那我们这样我把它掉啊。那我们看下一个,下一个谁呢?是这个了啊,Activity activity activity。Vision listener。那他是。监控谁的?或者说他的世界员又是谁呢?你注意,他的世界人员仍然不是三神。他的试验员仍然是实体类。我们看一下啊,这里边儿它有些概念,他说,该监听器用于监听在session中存放的指定类型对象的钝化与活化。你注意这两个概念啊,钝化与活化,什么是钝化?
01:01
什么是活化?很简单。所谓钝化。就是我们session里边的。对象。注意是session里边的对象。30里边对象肯定是在内存里边啊,是不是就是内存里边的对象写入到硬盘,称为钝钝化,什么叫活化?将硬盘中的数据恢复到内存,这个叫活化。我们这个监听器。就是监听session中数据的钝化与活化的。这东西有什么用啊?咱们说个场景啊。你在京东,在淘宝。
02:00
买东西呢?是吧,你这正正逛的对不对?我看中一件商品放到了购物车,我们大家知道购物车是什么实现的,购物车就是session啊。是session实现的。购物车是一种数据结构,对吧。是个集合,这个集合是放在session里边的,然后你把这些数据都放到了这个集合里边,也就是放到这个session里边的。好,我放了很多东西,正访问呢,突然间。假设啊。京东的服务器挂了。淘宝的服务器挂了。当机了。他那重启了,当然了,这种没有这种可能性啊,对于这两个大型的电商来说,不可能出现这种情况啊,但是我们自己写的成意可是有可能会出现这种情况的,服务器重启了。
03:06
那你30里边的数据。客户。放在30里面,数据你重启来是不是就没了呀,但这个数据能丢不能是不能丢的。那怎么办?这时候就需要把session里面这个数据给他。钝化到硬盘,你不是重启服务器了吗?服务器一启动啊,启动完毕了,再将硬盘中的数据给它活化到。Session中。这就是。我们这个监听器,它的作用。好,那下面我们就直接来写程序了啊。迪米卡,这是11。
04:04
哎,TP session,这个叫activation listener。这样啊,这个实体我们拷贝了就不再重写了,还有这个student。但是呢,这个接口得换了。B session act。是这个接口啊。是实体类实现这个接口。然后这这些都删掉了啊。
05:04
那我们看一下这个接口里边的方法两个。是不是?这是session did,这是session well pass。这这这什么意思啊。这是三。Did。你看这儿。这是什么?Session has just been是被活化了吗?活动的吗?而这个呢?The session is about To Be。这是动画,这是活画。所以他是。
06:03
监听我们的啊,这个对象的钝化的啊,这个活化的,它是监听钝化的,那好了。三。对。3SH。Well。当当前。类的对象。Be。怎么是不是活化呀?活化石。会。触发,该方法的执行被钝化。
07:10
什么是钝化了?啊。内存中的数据写入到。硬盘这个叫钝化。什么是活化?硬盘中的数据恢复恢。到。内存。OK。这样行不行?现在就这样写行不行?
08:02
啊,这样写行不行,你注意啊,这个我们刚才说这个钝化啊,钝化这个感觉大家能找到类似的感觉,不能这个钝化是不是大家在学Java基础的时候。讲那个IO流,IO流那是不是那个liable这个接口啊。做序列化、序列化、反序列化,记不记得什么是序列化?就是把内存中的数据怎么样写不到硬盘。什么是范学的话?把硬盘里边的数据怎么给他恢复到内存。所以这个东西是不是和那个有点关系啊。他确实有关系,如果那一部分内容啊,你想不起来了,大家可以。
09:03
参阅,由主编,由清华大学出版社出版的。Java零基础教程。那这个IO这一部分啊,对于对于这个序列化反序列化啊,做了比较详细的叙述啊,大家可以。看一下好。那。也就是说啊,我们这儿注意我们这儿是不是需要实现虚拟化接口呢。不知道,我们先不管他。紧接着我们来说先写上啊。Student。已经活。
10:00
Student。哎,你看看我这这个措词啊,就是将要背背钝话,你看人家这就是will嘛,将要背这已经活化,你看did。这不过去式啊,已经活化了,这个是将要钝化啊,不一样,这俩是不一样的啊好。还得还得来session呢,对不对,Session这就有现成的。秀还是用这个秀。那这就不是解绑的问题了啊。把这个去掉。现在我是要把这个student给他放到session里边,对不对,好,现在给他放了啊。
11:08
给它放进去那。跑起来。跑起来,嗯,这儿写什么呢?我把后台清了。设点JSP。好,你注意我现在是不是已经把它放到了三神里边,这是没有没有问题的吧,紧接着紧接着你注意什么叫宕机啊。什么叫当机?把服务器给他停了。那服务器停了,看着。我stop。
12:06
哎,Student将要是不是钝化呀,那这写着呢,Student将要被钝化,OK了,现在我重启服务器清掉。好,现在重启服务器了。哎。重启服务器。他。发生火化了没有,没见呐。是不是?重启服务器,按理说它应该自动做这个活化操作,可是他没有,是不是那什么原因呢。是我们操作的事儿。
13:01
还是诶,那这样我们给他这边再实现个什么s liable接口。停掉。呃,把这个也关掉。重来啊。好,我在这儿来秀点接气。我已经放了三了啊,现在已经给他放到了三,现在放到了三,紧接着我要。停掉服务器了。停掉。钝化是没问题的。现在我启动服务器。
14:04
诶,好像看见哪看见点东西啊,是不是活啊,对不对,已经恢复的恢复过来了。他已经放到了。Session线里边了,现在已经放到session里边了。这就是钝化和活化。也就是说我们这个。实体类除了实现这个接口以外,还需要实现什么序列化接口?同时还要实现CR。The接口。S2。Liel。OK。那这就是我们说的session activation listener好了,那到这里我们session规范中的八个监听器就全部说完了,当然了,除了这八个监听器,是不是就没有其他监听器了,有。
15:17
还有,但那些减震器啊。啊和和我们或者说那些监听器在哪儿,特别是我们到。这个solid3.0的时候,又增加了好多监听器,那个呢,回头到so3.0的时候讲soet3.0。这个新特性的时候呢,再说。
我来说两句