ApplicationContextAware接口
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
@Component
public class My1 implements ApplicationContextAware {
public static ApplicationContext act=null;
public void setApplicationContext(ApplicationContext arg0)
throws BeansException {
act=arg0;
}
}
使用时
My1.act.getBean("object name");
其它:
ssh项目中,时常使用WebApplicationContext,来获得spring上下文,如下:
WebApplicationContext wac= null;
wac=WebApplicationContextUtils.getWebApplicationContext(ServletActionContext.getServletContext());
但如果struts2框架未能在调用前加载,则不能正常使用。
// 未成功时,会抛异常
WebApplicationContextUtils.getRequiredWebApplicationContext();
// 为成功时,会返回null
WebApplicationContextUtils.getWebApplicationContext()
分享到:
相关推荐
两套上下文之间的通信是通过ApplicationContextAware接口来实现的。如果某个Bean需要访问到Spring的全局ApplicationContext,它可以实现这个接口,Spring会在初始化时自动注入ApplicationContext实例。这样,...
在Spring框架中,`Spring-Aware`接口是一个重要的概念,它允许我们与Spring的应用上下文(ApplicationContext)进行交互,从而获取或操作由Spring管理的Bean。`ApplicationContextAware`是其中的一个典型接口,当...
1. **理解ApplicationContextAware接口**:当一个Bean实现了ApplicationContextAware接口,Spring容器会在Bean初始化后,自动将ApplicationContext对象注入到Bean中,使得Bean可以获取到上下文中的其他Bean。...
在Spring框架中,Aware接口系列是其核心特性之一,它为Spring容器提供了向bean注入上下文信息的能力。这些接口让bean能够感知到Spring容器的存在,从而获取必要的服务或配置信息。下面我们将深入探讨Spring的Aware...
3. **实现ApplicationContextAware**:为了在`Timer`中使用Spring管理的Bean,我们需要实现`ApplicationContextAware`接口,以便获取Spring上下文。 ```java @Component public class TimerConfig implements ...
在提交任务时,可以将bean作为参数传递,或者在任务内部使用`ApplicationContextAware`接口获取应用上下文,从而获取bean。 4. **ApplicationContextAware**:让线程处理类实现`ApplicationContextAware`接口,...
4. **Spring的应用上下文(ApplicationContext)**:ApplicationContext是Spring的主要接口之一,它提供了获取Bean、处理消息和事件等功能,是Spring应用中的主要入口点。 5. **构造注入(constructor injection)*...
10. **上下文事件(Context Events)**:Spring应用上下文可以发布和监听自定义事件,`ApplicationContextAware`接口和`ApplicationEvent`类是实现这一功能的关键。 11. **异步处理与任务调度**:Spring 3.1引入了...
实现这个接口的类能够在Bean加载过程中获取到Spring应用上下文`ApplicationContext`,从而可以访问容器中的其他Bean和服务,如读取配置信息、发布事件等。 4. **BeanFactoryAware接口**: `BeanFactoryAware`接口...
例如,ApplicationContextAware接口的实现类可以监听ApplicationContext的事件,如上下文初始化和关闭事件。 以上内容仅是Spring框架部分核心概念的概述,Spring还有更多高级特性,如Spring Boot、Spring Data、...
它还支持监听器模式,可以检测到上下文的启动和关闭。 ##### 3.2 属性、合作者、自动装配和依赖检查 - **设置 Bean 的属性和合作者**:可以在 Bean 定义中指定其属性值和其他依赖的 Bean。 - **深入 Bean 属性和...
这些接口允许Bean访问上下文信息或自己的名称。 - **1.6.3 其他Aware接口** Spring还提供了一系列其他Aware接口,可以帮助Bean更好地融入Spring环境。 #### 六、Bean定义继承 通过继承Bean定义,可以复用现有...
- 其他Aware接口允许bean获取更多的上下文信息。 - **3.7 Spring Bean的继承** - 如何在一个bean上继承另一个bean的配置。 - **3.8 容器扩展点** - **3.8.1 使用BeanPostProcessor定制bean** - ...
4. 实现Action类:Action类可以实现Spring的`ApplicationContextAware`接口,以便在运行时获取Spring上下文,或者直接使用`@Autowired`注解注入依赖。 总的来说,Struts2和Spring的集成使得开发者能够利用Struts2的...
2. **XxxAware接口**:如ApplicationContextAware和BeanFactoryAware,可以让我们获取到ApplicationContext或BeanFactory,从而在Bean中直接访问到整个应用上下文或Bean工厂,进行更深入的定制。 3. **@Autowired...
- Spring还提供了一系列其他Aware接口,用于让Bean获取更多的上下文信息。 #### 六、Bean定义继承 - **Bean定义继承**:Bean可以继承另一个Bean的定义,从而重用属性和配置信息。这种机制可以减少重复配置,并使...
- **ApplicationContext**:扩展了BeanFactory,除了基本功能外,还支持资源加载、事件传播、国际化等功能,是Spring应用中的主要上下文接口。 - **BeanPostProcessor**:提供Bean实例化前后的处理能力,允许...
- **1.6.2 ApplicationContextAware与BeanNameAware**: 提供了一些接口让Bean能够知道自身所在的上下文环境和名称。 - **1.6.3 其他Aware接口**: Spring还提供了其他的一些Aware接口,如`EnvironmentAware`等,使得...