
- Spring ApplicationContext
Spring Boot项目中获取ApplicationContext的方法:
1、方法一:
public class SpringContext implements ServletContextListener {
private static ApplicationContext springContext;
public SpringContext() {
super();
}
public void contextInitialized(ServletContextEvent event) {
WebApplicationContext context= WebApplicationContextUtils.getWebApplicationContext(event.getServletContext());
setContext(context);
}
public void contextDestroyed(ServletContextEvent event) {
}
public static ApplicationContext context() {
return springContext;
}
public static void setContext(ApplicationContext context){
springContext=context;
}
}
2、方法二(Spring Boot):
@SpringBootApplication
public class Application extends SpringBootServletInitializer {
private static ApplicationContext context;
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
ApplicationStarterInitial.initial();
return application.sources(Application.class);
}
public static void main(String[] args) {
context = new SpringApplicationBuilder(Application.class).run(args);
}
public static ApplicationContext getContext(){
return context;
}
}
3、方法三:
@Autowired
private ApplicationContext applicationContext;
参考链接:
https://stackoverflow.com/questions/4914012/how-to-inject-applicationcontext-itself




近期评论