zoukankan      html  css  js  c++  java
  • spring容器启动完成后加载自定义逻辑

    业务需求中,可能会有一些逻辑需要在应用启动完成后,例如字典缓存,资源池初始化等等,代码如下

    public class InitApplication implements ApplicationContextAware,ApplicationListener<ContextRefreshedEvent> {
    
        private Logger logger = LoggerFactory.getLogger(InitApplication.class);
    
        private  ApplicationContext application;
    
        @Override
        public void onApplicationEvent(ContextRefreshedEvent contextRefreshedEvent) {
            if (!ContextRefreshedEvent.class.getName().equals(contextRefreshedEvent.getClass()
                    .getName())) {
                return;
            }
        //在web 项目中(spring mvc),系统会存在两个容器,
        //一个是root application context ,另一个就是 projectName-servlet context(作为root application context的子容器),所以此方法会加载多次
        //以下判断就可以防止多次加载 if (!
    ("Root WebApplicationContext").equalsignorance(event.getApplicationContext().getDisplayName())){
           return;
        }
        //业务逻辑,自行添加
    }    //此方法用于获取spring上下文,可以方便的拿取各种bean @Override public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { this.application = applicationContext; } }
  • 相关阅读:
    3dsmax script export/import tools
    BOBO输出插件的一些信息
    任务
    说说谷歌在线电子表格
    EditGrid在线编辑Excel文档
    如何控制,textField的宽度,
    在线文档管理平台
    雅虎的这个效果,有机会实现一下
    推荐在线电子表格EditGrid
    我的台账录入界面
  • 原文地址:https://www.cnblogs.com/yln20170705/p/10949845.html
Copyright © 2011-2022 走看看