Spring boot随时获取ApplicationContex

Posted 星朝

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring boot随时获取ApplicationContex相关的知识,希望对你有一定的参考价值。

  1. @Service  
  2. public class SpringManager implements ApplicationListener<ContextRefreshedEvent> {  
  3.     private static ApplicationContext applicationContext = null;  
  4.     @Override  
  5.     public void onApplicationEvent(ContextRefreshedEvent event) {  
  6.         if(applicationContext == null){  
  7.             applicationContext = event.getApplicationContext();  
  8.         }  
  9.     }  
  10.     /*ApplicationContext context= ContextLoader.getCurrentWebApplicationContext();//尝试下这个方法*/  
  11.     public static ApplicationContext getApplicationContext() {  
  12.         return applicationContext;  
  13.     }  
  14. }  




  1. 或者  
  2. @Service  
  3. public class SpringTool implements ApplicationContextAware {  
  4.     private static ApplicationContext context = null;  
  5.     @Override  
  6.     public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {  
  7.         context = applicationContext;  
  8.     }  
  9.     public static ApplicationContext getApplicationContext() {  
  10.         return context;  
  11.     }  
  12.   
  13.   
  14. }  


  1. 或者直接  
  2.     @Autowired  
  3.     ApplicationContext context;  












以上是关于Spring boot随时获取ApplicationContex的主要内容,如果未能解决你的问题,请参考以下文章

使用spring boot创建分层属性文件

停止许多特定的 Spring Boot 应用程序

在内存数据库中使用 Spring Boot 测试

不能在 Spring Boot 2(版本 2.0.0.M7)中包含 Prometheus 指标

在eclipse中将Spring Boot应用程序导出为JAR文件

如何在 Spring Boot 的 application.yml 中配置滚动文件附加程序