码迷,mamicode.com
首页 > 其他好文 > 详细

通过ContextRefreshedEvent方式初始化方法

时间:2017-10-16 19:24:34      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:man   event   表达式   and   java   pat   dispatch   xxx   tar   


@Component public class StartupListener { private final Logger logger = LogManager.getLogger(getClass()); @EventListener(value = ContextRefreshedEvent.class, condition = "#event.source.displayName.startsWith(\"Root\")") public void afterSpringStarted(ContextRefreshedEvent event) { AbstractRefreshableConfigApplicationContext dd = (AbstractRefreshableConfigApplicationContext) event.getApplicationContext(); GateKeeperCentral gateKeeperCentral = dd.getBean("xxxx", GateKeeperCentral.class); gateKeeperCentral.initContext(); } }

 1、 EventListener

  

ContextRefreshedEvent ApplicationContext或者叫spring被初始化或者刷新initialized会触发该事件
ContextStartedEvent spring初始化完,时触发
ContextStoppedEvent spring停止后触发,一个停止了的动作,可以通过start()方法从新启动
ContextClosedEvent spring关闭,所有bean都被destroyed掉了,这个时候不能被刷新,或者从新启动了
RequestHandledEvent 请求经过DispatcherServlet时被触发,在request完成之后

 

2、condition 

    可以使用SpEL表达式,就是当满足条件才执行

 

通过ContextRefreshedEvent方式初始化方法

标签:man   event   表达式   and   java   pat   dispatch   xxx   tar   

原文地址:http://www.cnblogs.com/sg9527/p/7678091.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!