java_web学习第三天(Servlet的事件监听)

发布时间:2016-12-8 2:30:28 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"java_web学习第三天(Servlet的事件监听)",主要涉及到java_web学习第三天(Servlet的事件监听)方面的内容,对于java_web学习第三天(Servlet的事件监听)感兴趣的同学可以参考一下。

Servlet的时间监听: 监听器:其实就是一个实现特定接口的java程序,时间监听用来监听时间的方法或者某个属性的改变。当发生上述事件的时候,监听器的某个方法将被调用。 1.监听ServletContext package com.enterise.always.servlet; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; /** * ServletContext的事件监听 * @author Always * */ public class MyServletContextListener implements ServletContextListener{ public void contextDestroyed(ServletContextEvent arg0) { System.out.println("MyServletContextListener.contextDestroyed()------------->"); } public void contextInitialized(ServletContextEvent arg0) { System.out.println("MyServletContextListener.contextInitialized()---------->"); } } 在web.xml中配置listener <listener> <listener-class>com.enterise.always.servlet.MyServletContextListener</listener-class> </listener> 当在项目被加载进tomcat的时候,ServletContext被创建时会调用时间监听中的: 信息: SessionListener: contextInitialized() MyServletContextListener.contextInitialized()----------> 2.监听HttpRequest package com.enterise.always.servlet; import javax.servlet.ServletRequestEvent; import javax.servlet.ServletRequestListener; public class MyHttpRequestListener implements ServletRequestListener { public void requestDestroyed(ServletRequestEvent arg0) { System.out.println("MyHttpRequestListener.requestDestroyed()"); } public void requestInitialized(ServletRequestEvent arg0) { System.out.println("MyHttpRequestListener.requestInitialized()"); } } <listener> <listener-class>com.enterise.always.servlet.MyHttpRequestListener</listener-class> </listener> 在request被创建的时候: MyHttpRequestListener.requestInitialized() 当在浏览器上访问另外一个servlet资源的时候: MyHttpRequestListener.requestDestroyed() MyHttpRequestListener.requestInitialized() MyHttpRequestListener.requestDestroyed() 先是将原先的request销毁,调用销毁方法 之后再次调用新的request的创建和销毁。 3.session的监听: package com.enterise.always.servlet; import javax.servlet.http.HttpSessionEvent; import javax.servlet.http.HttpSessionListener; /** * HttpSession的事件监听 * @author Always * */ public class MyHttpSessionListener implements HttpSessionListener{ public void sessionCreated(HttpSessionEvent se) { System.out.println("MyHttpSessionListener.sessionCreated()--------->"); } public void sessionDestroyed(HttpSessionEvent se) { System.out.println("MyHttpSessionListener.sessionDestroyed()------>"); } } web.xml配置: <listener> <listener-class>com.enterise.always.servlet.MyHttpSessionListener</listener-class> </listener>当在session创建的时候会执行sesssionCreated()的方法。 在session关闭或销毁的时候会调用sessionDestory的方法: MyHttpSessionListener.sessionCreated()---------> MyHttpSessionListener.sessionDestroyed()------> 具体的使用案例有: 统计当前在线人数 统计当前在线用户

上一篇:think in java interview-高级开发人员面试宝典(七)
下一篇:jsp 返回上一页并刷新

相关文章

相关评论