Web监听器_监听绑定、活钝化HttpSession

1. 绑定HttpSession
 将javaBean绑定到HttpSession,我们需要用到HttpSessionBindingListener这个监听器,并且是在javaBean中进行实现这个监听器。

//如果javaBean被绑定到session中时,会调用下面这个方法。
public void valueBound(HttpSessionBinding event){
    //这里写具体要触发的功能。
}

//如果javaBean从session域中移除,就会调用下面这个方法。
public void valueUnbound(HttpSessionBindingEvent event){
    //这里写具体触发的功能。
}

注意:这个监听器是由javaBean来实现的,并且不需要在web.xml中进行配置。

2. javaBean的钝化和活化
 所谓的javaBean的钝化是将session中的javaBean保存到文件中。而活化则与其相反,从文件中将javaBean直接获取。所以我们需要创建一个配置文件context.xml,将这个配置文件存放在META-INF下。
 配置文件如下:

<!--除了directory,其他的使固定的-->
<?xml version="1.0" encoding="UTF-8"?>
<Context>
    <Manager className="org.apache.catalina.session.PersistentManager"
        maxIdleSwap="1">
        <!--directory代表的是存放色杀死你文件的目录名字,可以根据自己喜好起名字。-->
        <Store className="org.apache.catalina.session.FileStore"
            directory="it315" />
    </Manager>
</Context>

 要实现这个功能,我们必须要javaBean中实现Serializable接口(最标准的javaBean是要求实现序列化的),然后实现监听器HttpSessionActivationListener然后就能实现活化和钝化。

//当我们关闭服务器的时候,就会触发钝化方法。
public void sessionWillPassivate(HttpSessionEvent se){
    //这里写具体触发的功能。
}

//当我们要从session中获取javaBean,就会触发活化方法。
public void sessionDidActivate(HttpSessionEvent se){
    //这里写具体触发的功能。
}

注意:这个监听器也是由javaBean来实现的,并且不需要在web.xml中进行配置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值