spring 容器启动和关闭执行某个动作 ApplicationContext
来源:互联网 发布:c语言编程之道 pdf 编辑:程序博客网 时间:2024/06/06 06:41
在Spring中已经定义了五个标准事件,分别介绍如下:
1)ContextRefreshedEvent:当ApplicationContext初始化或者刷新时触发该事件。
2)ContextClosedEvent:当ApplicationContext被关闭时触发该事件。容器被关闭时,其管理的所有单例Bean都被销毁。
3) RequestHandleEvent:在Web应用中,当一个http请求(request)结束触发该事件。
ContestStartedEvent:Spring2.5新增的事件,当容器调用ConfigurableApplicationContext的Start()方法开始/重新开始容器时触发该事件。
5)ContestStopedEvent:Spring2.5新增的事件,当容器调用ConfigurableApplicationContext的Stop()方法停止容器时触发该事件。
1)ContextRefreshedEvent:当ApplicationContext初始化或者刷新时触发该事件。
2)ContextClosedEvent:当ApplicationContext被关闭时触发该事件。容器被关闭时,其管理的所有单例Bean都被销毁。
3) RequestHandleEvent:在Web应用中,当一个http请求(request)结束触发该事件。
ContestStartedEvent:Spring2.5新增的事件,当容器调用ConfigurableApplicationContext的Start()方法开始/重新开始容器时触发该事件。
5)ContestStopedEvent:Spring2.5新增的事件,当容器调用ConfigurableApplicationContext的Stop()方法停止容器时触发该事件。
下面通过一个例子展示如何处理Spring内定的事件(例程3.8)。创建一个Java工程,添加Spring开发能力后,新建ioc.test包。在包中新建ApplicationEventListener类,实现ApplicationListener接口,在onApplicationEvent()方法中添加事件处理代码,如下:
package com.tomcat360.p2p.util;import org.springframework.context.ApplicationEvent;import org.springframework.context.ApplicationListener;import org.springframework.context.event.ContextClosedEvent;import org.springframework.context.event.ContextRefreshedEvent;import org.springframework.context.event.ContextStartedEvent;import org.springframework.context.event.ContextStoppedEvent;public class T implements ApplicationListener<ApplicationEvent>{@Overridepublic void onApplicationEvent(ApplicationEvent event) { if(event instanceof ContextClosedEvent ){ System.out.println(event.getClass().getSimpleName()+" 事件已发生!"); }else if(event instanceof ContextRefreshedEvent ){ System.out.println(event.getClass().getSimpleName()+" 事件已发生!"); }else if(event instanceof ContextStartedEvent ){ System.out.println(event.getClass().getSimpleName()+" 事件已发生!"); }else if(event instanceof ContextStoppedEvent){ System.out.println(event.getClass().getSimpleName()+" 事件已发生!"); }else{ System.out.println("有其它事件发生:"+event.getClass().getName()); } }}在Spring配置文件中定义一个Bean,类为ApplicationEventListener,代码如下:
<bean id="springStartListener" class="com.tomcat360.p2p.util.T"></bean>
0 0
- spring 容器启动和关闭执行某个动作 ApplicationContext
- spring容器启动事件和关闭事件
- apacheFtpServer集成spring由web容器控制启动和关闭
- 【Spring学习25】容器级启动和关闭回调
- 7.4.1:Spring容器ApplicationContext和BeanFactory
- 一,Spring容器BeanFactory和ApplicationContext对比
- Spring容器ApplicationContext实现和配置WebApplicationContext
- spring容器加载完成执行某个方法
- spring容器加载完成执行某个方法
- spring容器加载完成执行某个方法
- spring容器加载完成执行某个方法
- Spring容器ApplicationContext
- Spring ApplicationContext 容器 FileSystemXmlApplicationContext
- spring扩展容器-ApplicationContext
- spring容器ApplicationContext
- spring容器事件(启动,关闭,刷新...)
- 【JavaScript】延迟执行某个动作
- 关于spring的bean工厂和ApplicationContext容器的区别
- dup和dup2函数
- Java注解
- nginx + tomcat 导致session丢失的问题
- Python中if __name__ == '__main__':剖析
- 关于数据同步的几种实现
- spring 容器启动和关闭执行某个动作 ApplicationContext
- Spring整合JMS(二)——三种消息监听器
- 深度学习常用的Data Set数据集和CNN Model总结
- 将页面列表(<tr><td>)转成json串提交
- UVA 1407 Caves(树形dp)
- AAAI(2016)阅读笔记(一)
- if 和else if 的打法
- 使用ConvenientBanner时页面第一次显示总会显示最后一页
- Spring整合JMS(三)——MessageConverter介绍