Spring Context 工具类
时间: 2024-05-03 14:18:46 浏览: 139
Spring Context 工具类可以方便地获取 Spring 容器中的 Bean 对象,常用于在非 Spring 管理的类中获取 Spring 管理的 Bean 对象。以下是一个示例代码:
```java
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
@Component
public class SpringContextUtil implements ApplicationContextAware {
private static ApplicationContext applicationContext;
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
SpringContextUtil.applicationContext = applicationContext;
}
/**
* 获取 Spring 管理的 Bean 对象
*
* @param name Bean 的名称
* @return Bean 对象
*/
public static Object getBean(String name) {
return applicationContext.getBean(name);
}
}
```
该工具类实现了 ApplicationContextAware 接口,当 Spring 容器初始化时,会自动调用 setApplicationContext 方法,将 ApplicationContext 对象注入到工具类中。通过静态方法 getBean 可以方便地获取 Spring 管理的 Bean 对象。在非 Spring 管理的类中,可以直接通过 SpringContextUtil.getBean() 方法获取 Spring 管理的 Bean 对象。
阅读全文