欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Listener

程序员文章站 2022-05-01 13:02:23
...

1.监听器(Listener)

 一个监听器类,要实现ServletContextListener或者HttpSessionListener、ServletRequestListener等接口。

2.监听器的监听类别

  1. 按监听域对象分:ServletContext(application)、HttpSession、ServletRequestListener三大对象。分别监听他们的创建和销毁(initialed方法和destroyed方法)。
    对于监听application,用途1.做定时器;2.做全局变量
    对于session,可以用于统计在线人数。
    对于request,可以统计访问总数。
  2. 监听属性变化(add、remove、replace)
    这里面实现的接口是ServletContextAttributeListener、HttpSessionAttributeListener、ServletRequestAttributeListener等

主要方法有:

  1. attributeAdded()
  2. attributeRemoved()
  3. attributeReplaced()

3.监听HttpSession的状态(要让被监听的类实现HttpSessionBindingListener,无需在web.xml注册)
实现serializable、HttpSessionActivationListener(激化类,里面还有passivate(钝化)和activate(活化))等接口。要钝化和活化的类是实体类,就是entity类。必须实现serializable接口,表明可以序列化。

  1. 钝化:在服务器关闭或重启,web项目重载时,将服务器内存中的session存入数据库或文件中,一般在SESSION.ser中
  2. 活化:在服务器重启启动后,将SESSION.ser中的session导入。

3.监听器的启动顺序

监听器的启动顺序按照在web.xml中<listener></listener>的顺序加载。
**在有filter,listener,servlet的web项目中加载顺序listener>filter>servlet**
相关标签: Listener