首页 > 代码库 > 实现ApplicationContextAware接口时,获取ApplicationContext为null
实现ApplicationContextAware接口时,获取ApplicationContext为null
将懒加载关闭,@Lazy(false),默认为true
1 import org.springframework.beans.BeansException; 2 import org.springframework.context.ApplicationContext; 3 import org.springframework.context.ApplicationContextAware; 4 import org.springframework.context.annotation.Lazy; 5 import org.springframework.stereotype.Service; 6 7 @Service 8 @Lazy(false) 9 public class SpringContextUtil implements ApplicationContextAware { 10 11 private static ApplicationContext applicationContext = null; // Spring应用上下文环境 12 13 /* 14 * 15 * 实现了ApplicationContextAware 接口,必须实现该方法; 16 * 17 * 通过传递applicationContext参数初始化成员变量applicationContext 18 */ 19 20 public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { 21 SpringContextUtil.applicationContext = applicationContext; 22 } 23 24 public static ApplicationContext getApplicationContext() { 25 return applicationContext; 26 } 27 28 @SuppressWarnings("unchecked") 29 public static <T> T getBean(String name) throws BeansException { 30 return (T) applicationContext.getBean(name); 31 } 32 33 }
实现ApplicationContextAware接口时,获取ApplicationContext为null
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。