`
Riddick
  • 浏览: 634638 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

读取Spring的applicationContext.xml配置文件

阅读更多
读取applicationContext.xml方法主要有以下三种:
1) 利用ClassPathXmlApplicationContext,这种方式配置文件应该放在类路径下,否则Spring将找不到该文件。
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
ctx.getBean("jmsAdaptor");
ctx.getBean("jmsAdaptor4Producer");
...


2) 利用FileSystemXmlApplicationContext,这种方法可以
   a) 将配置文件放在工程的直接目录下
   ApplicationContext ctx = new FileSystemXmlApplicationContext("applicationContext.xml");
   ctx.getBean("jmsAdaptor");
   ctx.getBean("jmsAdaptor4Producer");

   b) 显式的给出配置文件的绝对路径,我们假设配置文件位于工程主目录中的conf文件夹中
String path = System.getProperty("user.dir");
ApplicationContext ctx = new FileSystemXmlApplicationContext(path + "\\conf\\applicationContext.xml");
ctx.getBean("jmsAdaptor");
ctx.getBean("jmsAdaptor4Producer");
...


3) 利用FileSystemResource,这个方法跟2)有点类似,可以
    a) 将配置文件放在工程的直接目录下
   Resource rs = new FileSystemResource("applicationContext.xml");
   BeanFactory factory = new XmlBeanFactory(rs);
   factory.getBean("jmsAdaptor");
   factory.getBean("jmsAdaptor4Producer");

   b) 显式的给出配置文件的绝对路径,我们假设配置文件位于工程主目录中的conf文件夹中
   String path = System.getProperty("user.dir");
   Resource rs = new FileSystemResource(path+ "\\conf\\applicationContext.xml");    
  BeanFactory factory = new XmlBeanFactory(rs);    
  factory.getBean("jmsAdaptor");
  factory.getBean("jmsAdaptor4Producer");

分享到:
评论
2 楼 xiaojianhx 2010-05-30  
xiaojianhx 写道
我为什么得不到呢....
我写了一个工具类class ,没有继承任何类,和任何接口,用你的第一种方式,

1,直接放到WEB-INF下,得不到
2,在src里放一份,如resource下,那么可以渠道,但是这样不是重复取了么?
3,只在resource下放一份,WEB-INF下的删除,启动tomcat报错

怎么回事,是不是配置出问题了?
请指教,谢谢!


不好意思....没看仔细........
我现在是放到累路径下了,web.xml里加了
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:resources/applicationContext.xml</param-value>
</context-param>

可以了,一份applicationContext.xml就够了

但是是不是在启动服务器的时候加载一次,通过你的方法一后又加载一次?是不是两次加载?
源代码我没看
1 楼 xiaojianhx 2010-05-30  
我为什么得不到呢....
我写了一个工具类class ,没有继承任何类,和任何接口,用你的第一种方式,

1,直接放到WEB-INF下,得不到
2,在src里放一份,如resource下,那么可以渠道,但是这样不是重复取了么?
3,只在resource下放一份,WEB-INF下的删除,启动tomcat报错

怎么回事,是不是配置出问题了?
请指教,谢谢!

相关推荐

Global site tag (gtag.js) - Google Analytics