zoukankan      html  css  js  c++  java
  • 通过ContextRefreshedEvent方式初始化方法


    @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表达式,就是当满足条件才执行

  • 相关阅读:
    红黑树——以无厚入有间
    红黑树——依天理以神遇
    B-树 分合之道
    B-树 动机与结构
    云心出岫——Splay Tree
    双散列和再散列暨散列表总结
    开放定址法——平方探测(Quadratic Probing)
    [LeetCode 109]
    [LeetCode 110]
    [LeetCode 111]
  • 原文地址:https://www.cnblogs.com/sg9527/p/7678091.html
Copyright © 2011-2022 走看看