Listener
来源:互联网 发布:大众软件app 编辑:程序博客网 时间:2024/05/22 05:21
在Servlet容器中,可以通过监听器来监听容器事件的变化,如监听ServletContext实例生命周期的变化以及ServletContext实例中属性的变化;此外还可以监听HttpSession对象的生命周期变化情况以及HttpSession中属性的变化情况。
在使用监听器时需要实现监听器的接口,当某个事件发生时会调用相应监听器实例的相关方法,监听器接口主要有:
l ServletContextListener
监听ServletContext生命周期的变化情况,接口的方法有:
i. contextInitialized:当应用被加载到容器时激发
ii. contextDestroyed:当应用从容器中卸载时激发
l ServletContextAttributeListener
监听ServletContext中属性的变化情况,如添加、删除属性等
l HttpSessionListner
监听HttpSession生命周期变化情况,如Session的创建和销毁等
l HttpSessionAttributeListener
监听HttpSession中属性的变化,如添加、删除属性等
l ServletRequestListener
l ServletRequestAttributeListener
在JavaWeb应用中使用监听器的步骤如下:
1) 确定监听的事件(如ServletContext的生命周期),并实现相应的接口;
public classContextLoadListener implements ServletContextListener
{
publicContextLoadListener()
{
}
public void contextInitialized(ServletContextEvent sce)
{
System.out.println("ServletContext Initialized");
}
public void contextDestroyed(ServletContextEvent sce)
{
System.out.println("ServletContext Destroyed");
}
}
2) 在web.xml中配置监听器
<listener>
<listener-class>ContextLoadListener</listener-class>
</listener>
注意:ServletContextListener、Filter、Servlet的作用顺序如何?
ServletContextListener:当应用被加载到容器或应用从容器中卸载时触发,可以进行一些资源的初始化、绑定和清理工作;而Filter只是请求—响应的中间层,起过滤作用。所以,当应用启动时ServletContextListener工作;当Filter拦截到匹配的请求时,Filter工作,之后激活其关联的Servlet或JSP。一组Filter作用的先后顺序与它们在web.xml文件的顺序相关,一组Servlet(没有<load-on-startup>子标签)作用的先后顺序与它们在web.xml文件的顺序相关。
- listener
- Listener
- Listener
- listener
- Listener
- LISTENER
- listener
- Listener
- Listener
- Listener
- listener
- Listener
- lISTENER
- Listener
- Listener
- Listener
- Listener
- Listener
- 快速排序
- JSP中EL表达式的应用以及常用的方法
- hadoop2.x编译(一)
- LoRa无线通信设计(二)空空距离测试
- C/C++语言void及void指针深层探索 .
- Listener
- 1106 -- 三角形
- 622 Vote【贪心】
- 九度oj 1180
- libuv里的几个缺陷
- 第一次写截图没传上去从新来一次
- 0到100奇数之和
- 1107 -- 闰年
- js中数字类型数组排序