什么是java监听器?
java监听器,也叫做Listener,是Servlet的监听器。它可以监听客户端的请求,服务端的操作等。通过监听器,可以自行的激发一些操作,比如监听在线的用户、在线会员数量。(这里还会有一个小问题,就是监听用户时,监听Session,但当用户退出浏览器,或者关闭电脑时,因为session中默认30分钟内保存用户信息。所以,采用这种方法,监听器并不能实时的实现监听。之后会想办法解决再写一篇解决的文章。)
Listener 监听器的作用?
是指在特定事件发生时(即满足我们所设置的监听条件时),监听器可以自动执行相应的操作。(相对应的操作也是可以自己设置的哦)
Listener 监听器接口分类
按监听的对象划分,可以分为:
ServletContext 对象监听器:
1. ServletContextListener 监听ServletContext对象,在ServletContext初始化之后,该监听器会执行相应的方法
2. ServletContextAttributeListener 监听对ServletContext属性的操作,比如增加、删除、修改
HttpSession 对象监听器:
1. HttpSessionListener 监听Session对象
2. HttpSessionAttributeListener监听Session中的属性操作
3. HttpSessionActivationListener监听HTTP会话的active和passivate情况,passivate是指非活动的session被写入持久设备(比如硬盘),active相反。
4. HttpSessionBindingListener监听器:感知Session绑定的事件监听器
注意:HttpSessionActivationListener,HttpSessionBindingListener不需要web.xml配置文件
ServletRequest 对象监听器:
1. ServletRequestListener监听Request对象
2. ServletRequestAttributeListener监听Requset中的属性操作
按监听的事件划分:
对象自身的创建和销毁的监听器
对象中属性的创建和消除的监听器
session中的某个对象的状态变化的监听器
监听器配置
在web.xml中配置监听器。注意:监听器>过滤器>serlvet,配置的时候要注意先后顺序。
1. @WebListener
2. <listener>
<listener-class></listener-class>
</listener>