您的位置:首页 > 编程语言 > Java开发

读取Spring配置文件的位置

2013-05-31 08:33 381 查看
在spring 中 ,我们可以从项目的不同的文件位置读取spring 配置文件,相关位置有四种情况:

1> 在 源代码 src或与src 平齐的目录下

2> 在 WEB-INF 目录下,相对于WEB 工程

3> 在 源代码 src或src 的包下

4> 在 任意位置

相关代码如下:

import org.springframework.beans.factory.BeanFactory;

import org.springframework.beans.factory.xml.XmlBeanFactory;

import org.springframework.context.ApplicationContext;

import org.springframework.context.support.ClassPathXmlApplicationContext;

import org.springframework.context.support.FileSystemXmlApplicationContext;

import org.springframework.core.io.FileSystemResource;

import org.springframework.core.io.Resource;

import org.springframework.web.context.support.XmlWebApplicationContext;

public class ReadSpringContext {

/**

* 读取spring配置文件的位置,在工作目录下<p>

* 在eclipse工程中与src平级的目录下

*/

public static ApplicationContext readFromProject(String xml) {

//ApplicationContext context = new FileSystemXmlApplicationContext("one.xml");

//UserBean ub = (UserBean)context.getBean("ub");

//System.out.println(ub.getUid());

return new FileSystemXmlApplicationContext(xml);

}

/**

* 读取spring配置文件的位置,在web-inf目录

*/

public static ApplicationContext readFromWebinf() {

//ApplicationContext context = new XmlWebApplicationContext();

//UserBean ub = (UserBean)context.getBean("ub");

//System.out.println(ub.getUid());

return new XmlWebApplicationContext();

}

/**

* 读取spring配置文件的位置,在src或包目录

*/

public static ApplicationContext readFromSrc(String xml) {

//ApplicationContext context = new ClassPathXmlApplicationContext("one.xml");

//ApplicationContext context = new ClassPathXmlApplicationContext("accp/y2/bean/one.xml");

//UserBean ub = (UserBean)context.getBean("ub");

//System.out.println(ub.getUid());

return new ClassPathXmlApplicationContext(xml);

}

/**

* 从任意位置读取spring配置文件

*/

public static BeanFactory readFromAny(String xml) {

//Resource rs=new FileSystemResource("d:/_temp/one.xml");

//BeanFactory factory=new XmlBeanFactory(rs);

//ApplicationContext context = new GenericApplicationContext();

//Resource resource = context.getResource("file:d:/_temp/one.xml");

//BeanFactory factory = new XmlBeanFactory(resource);

//UserBean ub = (UserBean)factory.getBean("ub");

//System.out.println(ub.getUid());

Resource rs=new FileSystemResource(xml);

return new XmlBeanFactory(rs);

}

public static void main(String[] args) {

//readFromSrc();

//readFromProject();

//readFromAny();

//readFromWebinf();

}

}

文章出处:http://blog.163.com/zsq303288862@126/blog/static/93745961201182011262267/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: