实现 javax.servlet.ServletContextListener 接口
当Servlet容器启动时会执行contextInitialized(),当Servlet容器停止时会执行contextDestroyed()
在contextInitialized()中加入需要监听的程序
/** * 定时器启动监听器 */ public class TimerStartListener implements ServletContextListener { protected static final Logger logger = Logger .getLogger(TimerStartListener.class); @Override public void contextDestroyed(ServletContextEvent sce) { } @Override public void contextInitialized(ServletContextEvent sce) { TaobaoOrderTimerUtils taobaoOrderTimerUtils = SpringContextHolder .getBean("taobaoOrderTimerUtils"); TimerUtils timerUtils = SpringContextHolder.getBean("timerUtils"); sce.getServletContext().setAttribute("timerUtils", timerUtils); ITaoBaoStoreManager storeManager = SpringContextHolder .getBean("taoBaoStoreManager"); List<TaoBaoStore> stores = new ArrayList<TaoBaoStore>(); try { stores = storeManager.getAllTaoBaoStore(); } catch (DBRuntimeException e) { logger.info("如果本次错误在首次安装出现,请忽略本异常!", e); } for (TaoBaoStore store : stores) { // 如果定时器为开启状态的在启动时开启定时任务 if (store.getStatus_time_task() == 1) { taobaoOrderTimerUtils.startTimer(store); } } } }
项目中用到的!
spring包中ContextLoaderListener
servlet包中ServletContextListener
===========================================================
ServletRequestListener用于监听用户请求的到达,实现该接口的监听器需要实现如下两个方法。
requestInitialized(ServletRequestEvent sre):用户请求到底、被初始化时触发该方法。
requestDestroyed(ServletRequestEvent sre):用户请求结束、被销毁时触发该方法。
ServletRequestAttributeListener则用于监听ServletRequest(request)范围内属性的变化。
实现该接口的监听器需要实现attributeAdded、attributeRemoved、attributeReplaced三个方法。由此可见,ServletRequestAttributeListener与ServletContextAttributeListener的作用相似,都用于监听属性的改变,只是ServletRequestAttributeListener监听request范围内属性的改变,而ServletContextAttributeListener监听的是application范围内属性的改变。
相关推荐
Servlet监听器技术是Java Servlet规范中的一项重要特性,它允许开发者在特定的Servlet容器事件发生时执行自定义的代码逻辑。这些事件可以包括Web应用程序的初始化、终止,或者是Servlet或Servlet上下文...
ServletContextListener 是 Servlet API 中的一个接口,它能够监听 ServletContext 对象的生命周期,实际上就是监听 Web 应用的生命周期。当 Servlet 容器启动或终止 Web 应用时,会触发 ServletContextEvent 事件,...
Servlet监听器是Java Web开发中的一个重要概念,它允许开发者在特定的Servlet容器事件发生时执行相应的代码。在本文中,我们将深入探讨Servlet监听器的工作原理、配置和使用,结合具体的"web.xml"配置以及JSP页面的...
在"利用servlet监听器,系统启动时创建自定义容器简单例子"中,我们主要关注`ServletContextListener`接口。要创建一个监听器,你需要编写一个类,实现`ServletContextListener`接口,并重写它的两个方法:`context...
Servlet事件监听器允许开发者对特定的Servlet容器事件做出反应,而JSP则是用于创建动态网页的简便方式。这里我们将深入探讨这两个概念以及它们在实际应用中的使用。 一、Servlet事件监听器 Servlet事件监听器是...
JAVA Servlet监听器是指在Servlet容器中,用于监听一些重要事件的发生,监听器对象可以在事情发生前、发生后做一些必要的处理。监听器可以分为多种类型,每种类型都有其特定的应用场景和用途。 ...
4. **ServletRequestAttributeListener** 和 **HttpSessionAttributeListener**:监听Servlet请求或HttpSession中属性的添加、移除和替换事件。 5. **ServletContextAttributeListener**:监听ServletContext对象中...
7. **监听器Listener**:监听器允许我们监听Servlet容器中的特定事件,如会话创建、销毁、上下文初始化等。常见的监听器接口有`ServletContextListener`、`ServletRequestListener`等。 8. **会话Session管理**:...
Servlet监听器是Java Web开发中的一个重要概念,它允许开发者对Web应用程序中特定事件的发生进行响应。监听器基于Java的事件驱动模型,通过实现特定的接口,可以在ServletContext、HttpSession和ServletRequest等...
- `javax.servlet.ServletContextListener`: 监听Servlet上下文的生命周期事件,例如应用启动和关闭。 - `javax.servlet.ServletContextAttributeListener`: 监听ServletContext中的属性添加、删除和更新事件。 -...
首先,`ServletContextListener`接口用于监听Servlet上下文(即整个Web应用)的生命周期事件。当Web应用启动时,`contextInitialized`方法会被调用,这可以用来进行一些初始化工作,如加载配置文件、设置全局变量等...
1. **ServletRequestListener**:监听Servlet请求的开始和结束。 2. **ServletRequestAttributeListener**:监听请求属性的变化、添加或移除。 3. **HttpSessionListener**:监控会话的创建和销毁。 4. **...
### Servlet监听器总结 #### 一、Listener概念与作用 - **定义**:在Java Web开发中,Listener(监听器)是一种特殊的组件,主要用于监听容器内的特定事件,并根据这些事件的发生执行相应的处理逻辑。 - **功能**...
在这个“JavaServlet帮助文档”中,我们将深入探讨Servlet容器的工作原理、Servlet API的使用以及如何在实际项目中部署和管理Servlet。 Servlet容器如Tomcat、Jetty等,它们提供了一个执行Servlet的平台,负责解析...
监听器是实现了特定接口的对象,它们监听Servlet上下文、session和请求事件。例如,ServletContextListener可以监听上下文的初始化和销毁事件,HttpSessionListener可以监听会话的创建和失效事件。 综上所述,Java ...
7. **监听器(Listener)**:监听器是实现了特定接口的类,可以监听Servlet容器中的特定事件,如会话创建、销毁,或者ServletContext的初始化和销毁。常见的监听器有`HttpSessionListener`、`ServletRequestListener...
开发Servlet监听器需要实现Servlet规范定义的接口,例如实现ServletContextListener接口需要覆盖contextInitialized和contextDestroyed方法。在web.xml配置文件中注册监听器,可以指定多个监听器并控制它们的加载...
监听器用于监听Servlet容器中的特定事件,如Session的创建、销毁,或者Context的初始化、销毁等。常见的监听器接口有`ServletContextListener`、`ServletRequestListener`、`HttpSessionListener`等。 七、部署描述...
- 监听器监听特定的Servlet上下文事件,如会话创建、销毁、请求初始化等,实现`ServletContextListener`、`HttpSessionListener`等接口。 8. **MVC框架与Servlet**: - Spring MVC、Struts、JSF等MVC框架都是基于...