在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(); } }