当我将项目导出到jar
文件时,我希望beans.xml
与jar
位于同一文件夹中
以下操作正常,但XmlBeanFactory
已弃用
BeanFactory c = new XmlBeanFactory(new FileSystemResource("beans.xml"));
我试过这个
ApplicationContext c= new ClassPathXmlApplicationContext("beans.xml");
但这需要我将beans.xml
保存在资源子文件夹中
将弃用的XmlBeanFactory
和beans.xml
替换为与jar
位于同一文件夹中的正确代码是什么?
ClassPathXmlApplicationContext为XML bean定义使用标准资源位置。使用GenericApplicationContext可获得更大的灵活性。
示例:
GenericApplicationContext ctx = new GenericApplicationContext();
XmlBeanDefinitionReader xmlReader = new XmlBeanDefinitionReader(ctx);
xmlReader.loadBeanDefinitions(new FileSystemResource("beans.xml"));
我知道这不能直接回答您的问题,但如果您对beans.xml的替代方案感兴趣,为什么不使用@Bean和@Configuration来尝试注释路径呢。
http://docs.spring.io/spring-javaconfig/docs/1.0.0.m3/reference/html/creating-bean-definitions.html