在普通类中使用@service注释的类中的方法时会包空指针异常, 这种是因为,该普通类,没有加载到Spring容器中,所以获取由Spring容器管理的对象时获取不到,报出 java.lang.NullPointerException 空指针异常。一个困扰我好久的问题,最后在网上找到了解决办法,感谢那些大神。
解决办法:
定义工具类:
@Component
public class SpringUtil implements ApplicationContextAware {
private static ApplicationContext applicationContext;
@Override
public void setApplicationContext(ApplicationContext context) throws BeansException{
if(SpringUtil.applicationContext == null) {
SpringUtil.applicationContext = context;
}
}
/**
* 获取applicationContext
* @return
*/
public static ApplicationContext getApplicationContext() {
return applicationContext;
}
/**
* 通过beanName获取bean
* @param beanName
* @return
*/
public static Object getB