zhangyayun0 2011-02-22
Spring中加载Bean配置文件的常用方式有两种,一种是通过实例化FileSystemXmlApplicationContext类的方式加载Bean,
另一种是通过实例化ClassPathXmlApplicationContext类的方式加载Bean.现举例如下,已做记录.
1.FileSystemXmlApplicationContext
(1)默认从项目工作路径开始查找,是相对路径
ApplicationContext applicationContext1 = new FileSystemXmlApplicationContext( "src/main/java/org/springframework/abc/demo/beans.xml");
(2)如果加上file前缀,则表示绝对路径
ApplicationContext applicationContext2 = new FileSystemXmlApplicationContext( "file:E:/SpringSources/src/main/java/org/springframework/abc/demo/beans.xml");
2.ClassPathXmlApplicationContext
(1)没有前缀,默认为项目的classpath下相对路径
ApplicationContext applicationContext3 = new ClassPathXmlApplicationContext("beans.xml");
(2)加上classpath前缀,表示项目的classpath下相对路径
ApplicationContext applicationContext4 = new ClassPathXmlApplicationContext( "classpath:beans.xml");
3.DEMO代码如下
public class Test { public static void main(String[] args) { ApplicationContext applicationContext1 = new FileSystemXmlApplicationContext( "file:E:/SpringSources/src/main/java/org/springframework/abc/demo/beans.xml"); System.out.println(applicationContext1.getBean("person")); ApplicationContext applicationContext2 = new FileSystemXmlApplicationContext( "src/main/java/org/springframework/abc/demo/beans.xml"); System.out.println(applicationContext2.getBean("person")); ApplicationContext applicationContext3 = new FileSystemXmlApplicationContext( "classpath:beans.xml"); System.out.println(applicationContext3.getBean("person")); ApplicationContext applicationContext4 = new ClassPathXmlApplicationContext( "beans.xml"); System.out.println(applicationContext4.getBean("person")); ApplicationContext applicationContext5 = new ClassPathXmlApplicationContext( "classpath:beans.xml"); System.out.println(applicationContext5.getBean("person")); } }