Listener
程序员文章站
2022-05-01 13:02:23
...
1.监听器(Listener)
一个监听器类,要实现ServletContextListener或者HttpSessionListener、ServletRequestListener等接口。
2.监听器的监听类别
- 按监听域对象分:ServletContext(application)、HttpSession、ServletRequestListener三大对象。分别监听他们的创建和销毁(initialed方法和destroyed方法)。
对于监听application,用途1.做定时器;2.做全局变量
对于session,可以用于统计在线人数。
对于request,可以统计访问总数。 - 监听属性变化(add、remove、replace)
这里面实现的接口是ServletContextAttributeListener、HttpSessionAttributeListener、ServletRequestAttributeListener等
主要方法有:
- attributeAdded()
- attributeRemoved()
- attributeReplaced()
3.监听HttpSession的状态(要让被监听的类实现HttpSessionBindingListener,无需在web.xml注册)
实现serializable、HttpSessionActivationListener(激化类,里面还有passivate(钝化)和activate(活化))等接口。要钝化和活化的类是实体类,就是entity类。必须实现serializable接口,表明可以序列化。
- 钝化:在服务器关闭或重启,web项目重载时,将服务器内存中的session存入数据库或文件中,一般在SESSION.ser中
- 活化:在服务器重启启动后,将SESSION.ser中的session导入。
3.监听器的启动顺序
监听器的启动顺序按照在web.xml中<listener></listener>的顺序加载。
**在有filter,listener,servlet的web项目中加载顺序listener>filter>servlet**
推荐阅读
-
Filter、Servlet、Listener的学习_动力节点Java学院整理
-
C#采用Winform实现类似Android的Listener
-
Java listener简介_动力节点Java学院整理
-
Filter、Servlet、Listener的学习_动力节点Java学院整理
-
C#采用Winform实现类似Android的Listener
-
Spring Boot 编写Servlet、Filter、Listener、Interceptor的方法
-
Android View添加 Listener 实例代码
-
Android解决Spinner初始化时自动选择第一个 item 及点击已选中的 item 时不触发Listener问题
-
Spring Boot 编写Servlet、Filter、Listener、Interceptor的方法
-
Android View添加 Listener 实例代码