定义一个类SpringTool
/**
* 通过该类即可在普通工具类里获取spring管理的bean
* @author wolf
*
*/
public final class SpringTool implements ApplicationContextAware {
private static ApplicationContext applicationContext = null;
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
if (SpringTool.applicationContext == null) {
SpringTool.applicationContext = applicationContext;
System.out.println(
"========ApplicationContext配置成功,在普通类可以通过调用ToolSpring.getAppContext()获取applicationContext对象,applicationContext="
+ applicationContext + "========");
}
}
public static ApplicationContext getApplicationContext() {
return applicationContext;
}
public static Object getBean(String name) {
return getApplicationContext().getBean(name);
}
}
然后将这个类,加入到配置文件里,spring-common.xml
<bean class =“app.util.spring.SpringTool”/>
然后就可以了,就可以在任何一个普通的工具类里,根据春天里配置好的豆的ID,例如:默认是实现类的全称首字母小写,得到这个注入好的对象了,
import app.util.spring.SpringTool;
public class Test {
public void print() {
ArticleService articleService = (ArticleService) SpringTool.getBean("articleService");
Article article = articleService.queryById(756);
System.out.println(article.getTitle());
}
}
转载:https://blog.csdn.net/tianyaleixiaowu/article/details/54630383