Spring应用内部获取ApplicationContext的两种方法
程序员文章站
2022-06-07 15:22:04
...
方法1:
继承ApplicationObjectSupport类,然后调用继承的方法手动获取:
接下来就可以做想做的事了
方法2:
实现ApplicationContextAware接口,重写setApplicationContext方法,Spring会创建bean时自动注入
完整案例
继承ApplicationObjectSupport类,然后调用继承的方法手动获取:
ConfigurableApplicationContext context = (ConfigurableApplicationContext) getApplicationContext(); //动态添加新的bean
接下来就可以做想做的事了
方法2:
实现ApplicationContextAware接口,重写setApplicationContext方法,Spring会创建bean时自动注入
完整案例
@Controller @RequestMapping("/test") public class SessionTestController implements ApplicationContextAware { private ExcelCache prevCache; private ApplicationContext applicationContext; @RequestMapping("/testsessionscope") public @ResponseBody JSONObject testSessionScope(){ JSONObject res = new JSONObject(); ExcelCache excelCache = getExcelCache(); //do something return res; } private ExcelCache getExcelCache() { return (ExcelCache) applicationContext.getBean("excelCache"); } @Override public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { this.applicationContext = applicationContext; } }
上一篇: Div等元素onBlur的实现
推荐阅读
-
Spring获取ApplicationContext对象工具类的实现方法
-
Spring应用内部获取ApplicationContext的两种方法
-
Spring应用内部获取ApplicationContext的两种方法
-
Spring 注解中,普通类获取@Service标记的方法 或者bean对象的两种方法
-
Spring中获取bean的两种方法
-
获取接口所有实现类的两种方法 spring和java spi
-
Java获取接口所有实现类的两种方法 spring和java spi
-
获取Spring的应用上下文ApplicationContext
-
Spring获取ApplicationContext对象工具类的实现方法
-
Spring中获取某一类型下所有Bean实例的两种方法