ContextRefreshedEvent,ApplicationContext初始化或者被更新是会触发,ConfigurableApplicationContext接口中的refresh()方法被调用会触发
ContextStartedEvent,,ConfigurableApplicationContext接口中的start()方法被调用会触发
ContextStoppededEvent,,ConfigurableApplicationContext接口中的stop()方法被调用会触发
ContextClosedEvent,AppliactionContext被关闭时触发该事件,所有容器管理的单例bean被销毁。
RequestHandledEvent,当一个http请求结束时触发该事件
如果一个bean实现了ApplicationListener接口,当一个ApplicationEvent被发布后,遍历所有监听器,对于每一个监听器来说其实都可以获取到监听事件,但是是否进行处理则由事件监听器来决定,如果要处理,使用onApplicationEvent()方法来进行监听器的处理
自定义监听事件,需要ApplicationEvent接口,ApplicationContext使用publishEvent()方法来发布事件。