总结 根据你的具体需求和场景,你可以选择上述任何一种方法来获取ApplicationContext。自动注入和构造函数注入是最常用的方式,适用于大多数情况。如果你需要在非Spring管理的类中获取ApplicationContext,则实现ApplicationContextAware接口是一个不错的选择。而SpringApplication的上下文则更多地用于程序的启动和全局配置。
import org.springframework.context.annotation.AnnotationConfigApplicationContext;public class AppDemo {public static void main(String[] args) {AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext("com.springboot.demo2.test");// context.getBean(Demo1.class).show();// context...
通过上述输出结果可知,applicationcontext正常获取,如果需要在run方法执行之前,使用applicationcontext做一些事情,可在MainBusiListeners的onApplicationEvent方法中进行。另外,使用@Component或者具有类似功能注解,启动类中去掉sa.addListeners(new MainBusiListeners());,一样可以正常获取applicationcontext,ApplicationListener中的Eve...
1.直接通过@Resource注解注入 @Resource ApplicationContext applicationContext; 2.实现ApplicationContextAware接口 @Component public class SpringBeanUtils implements ApplicationContextAware { private static ApplicationContext applicationContext; @Override public void setApplicationContext(ApplicationContext applicationContext...
ApplicationContext是什么? 简单来说就是Spring中的容器,可以用来获取容器中的各种bean组件,注册监听事件,加载资源文件等功能。 Application Context获取的几种方式 1 直接使用Autowired注入 @Component public class Book1 { @Autowired private ApplicationContext applicationContext; ...
基于SpringBoot平台完成ApplicationContext对象的获取,并通过实例手动获取Spring管理的bean. SpringBoot 企业级核心技术学习专题 构建项目 本章项目不需要太多的内容,添加Web依赖就可以了。 ApplicationContextAware 这个接口对象就是我们今天的主角,其实以实现ApplicationContextAware接口的方式获取ApplicationContext对象实例并不是...
方式③:自定义工具类实现ApplicationContextAware接口以获取spring容器 方式④:自定义工具类继承ApplicationObjectSupport抽象类以获取spring容器 方式⑤:自定义工具类继承WebApplicationObjectSupport抽象类以获取spring容器 参考资料 前言 众所周知,在Spring框架中的全局上下文对象通常被称为ApplicationContext。这是Spring容器的一...
现在,我们使用springboot项目,不再有application.xml ,所以下面介绍一下springboot获取applicationcontext的方法。 一、通过SpringBeanUtils工具类。 首先,让我们看一下springboot 的启动类 public static void main(String[] args) { SpringApplication.run(Application.class, args); ...
ApplicationContext是Spring中的Bean工厂,可以用来获取Spring容器中的各种bean组件,注册监听事件,加载资源文件等功能 当一个类实现了这个接口(ApplicationContextAware)之后,这个类就可以方便获得ApplicationContext中的所有bean 创建实现ApplicationContextAware接口的静态类 ...