加载Spring配置文件时,如果Spring配置文件中所定义的Bean类,如果该类实现了ApplicationContextAware接口,那么在加载Spring配置文件时,会自动调用ApplicationContextAware接口中的 public void setApplicationContext(ApplicationContext context) throws BeansException方法,并且自动可获得ApplicationContext 对象。前提必须在Spring配置文件中指定改类。 Spring配置文件中配置:
/** * ApplicationContext的帮助类 * 自动装载ApplicationContext */ public class SpringContextHelper implements ApplicationContextAware { private static ApplicationContext context ; /* * 注入ApplicationContext */ @Override public void setApplicationContext(ApplicationContext context) throws BeansException { //在加载Spring时自动获得context SpringContextHelper.context = context; System.out.println(SpringContextHelper.context); } public static Object getBean(String beanName){ return context.getBean(beanName); } } |