首页 > 代码库 > ApplicationContext时间机制

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(事件源)  来触发事件 

    

ApplicationContext时间机制