现在主流的session缓存解决方式有两类,一个是利用tomcat+redis,另一个是spring-session。至于怎么弄,真的是随便搜,这里说下问题。
我是用tomcat+redis的方式,但是后来发现一个问题,session时销毁并不会触发sessionDestroyed方法,但是能触发添加元素的监听,简直爆炸。后来自己又去部署了spring session的缓存方式,发现居然监听器一个都触发不了。
不知道有没有什么解决方案,还是说放弃使用监听器。。。
———- —————————————————– —
发现一个spring session缓存的无法触发监听器的解决办法
<bean class="org.springframework.session.web.http.SessionEventHttpSessionListenerAdapter">
<constructor-arg name = "listeners" >
<list>
<!-- 这个类为自己继承httpSessionListener的监听器 -->
<bean class = "xyz.xiaoboge.listen.Listener" />
</list>
</constructor-arg>
</bean>
还得在web.xml里面声明
<listener>
<listener-class>xyz.xiaoboge.listen.Listener</listener-class>
</listener>
这样配置后,可以调用创建和销毁方法,但是,注意,session销毁时,进入的HttpSessionBindingEvent的对象里面的session为 null !!!
感觉并没太大卵用,我都不知道那个session被销毁了。能干嘛。。