ApplicationContext时间机制
Spring中ApplicationContext中事件机制比较简单,容器事件:ApplicationEvent ,监听器:ApplicationListener,当事件发生时,触发监听器中方法。
看一个实例:
package applicationContextEvent;
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextRefreshedEvent;
public class MyListener implements ApplicationListener {
public void onApplicationEvent(ApplicationEvent arg0) {
if(arg0 instanceof ContextRefreshedEvent)//ContextRefreshedEvent表示初始化容器或刷新容器事件
{
System.out.println("-------------");
}
}
}
然后在xml中配置事件监听器:
<bean id="myListener" class="applicationContextEvent.MyListener">
</bean>
当我们调用new ClassPathapplicationContext(....)时,就会触发该事件
以上的ContextRefershedEvent是自动触发,如果我们想定义一个自己的事件(不是applicationContext内置的),我们就需要手动的通过ApplicationContext的pulishEvent(事件源) 来触发事件
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。