import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class SpringContextSingleton {
private final ApplicationContext applicationContext = new ClassPathXmlApplicationContext("config/spring/applicationContext-beans.xml"); public ApplicationContext getApplicationContext() {
return applicationContext;
} public void setApplicationContext(final ApplicationContext applicationContext) {
}
private SpringContextSingleton() {
}
private static class SingletonHolder {
private static final SpringContextSingleton INSTANCE = new SpringContextSingleton();
}
public static SpringContextSingleton getInstance() {
return SingletonHolder.INSTANCE;
} public Object getBean(final String beanName) {
return applicationContext.getBean(beanName);
}
}Obejct o=SpringContextSingleton.getInstance().getBean("xxx");
我这样调用的时候抛了个异常ExceptionInInitializerError,异常行是 private static final SpringContextSingleton INSTANCE = new SpringContextSingleton();
当然xml文件肯定是有的,肯定是类加载初始化的时候出错了,哪里出错了?
import org.springframework.context.support.ClassPathXmlApplicationContext;public class SpringContextSingleton {
private final ApplicationContext applicationContext = new ClassPathXmlApplicationContext("config/spring/applicationContext-beans.xml"); public ApplicationContext getApplicationContext() {
return applicationContext;
} public void setApplicationContext(final ApplicationContext applicationContext) {
}
private SpringContextSingleton() {
}
private static class SingletonHolder {
private static final SpringContextSingleton INSTANCE = new SpringContextSingleton();
}
public static SpringContextSingleton getInstance() {
return SingletonHolder.INSTANCE;
} public Object getBean(final String beanName) {
return applicationContext.getBean(beanName);
}
}Obejct o=SpringContextSingleton.getInstance().getBean("xxx");
我这样调用的时候抛了个异常ExceptionInInitializerError,异常行是 private static final SpringContextSingleton INSTANCE = new SpringContextSingleton();
当然xml文件肯定是有的,肯定是类加载初始化的时候出错了,哪里出错了?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货