我们可以通过实现ApplicationContextAware接口,获取spring上下文环境,进而进行其他处理。
实现ApplicationContextAware时需要覆写setApplicationContext方法,通过此方法,我们可以获取spring容器的上下文环境对象,从而可以将其赋值给某个属性,供后续的使用。
一、示例
@Component
public class SpringContextHelper implements ApplicationContextAware{private static ApplicationContext context =null;
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
context = applicationContext;
}
public static Object getBean(String name){
return context.getBean(name);
}
}
Spring容器会在加载完 bean 后,通过个对象中的setApplicationContext方法把上下文对象设置进对象的属性中。
网友评论