ClassPathXmlApplicationContext与FileSystemXmlApplicationContext是spring中读取配置文件的方法,下面我们看看他们的用法
ClassPathXmlApplicationContext默认读取的是项目下classes文件夹下的文件
默认情况下路径是不需要加classpath:
FileSystemXmlApplicationContext
1.可以读取绝对路径
2.可以读取根目录下的路径
3.也可以对其classs下的文件路径,需要加上classpath:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.2.3.RELEASE</version>
</dependency>
public static void main( String[] args )
{
//第一种情况,applicationContext2.xml文件位置直接在src/main/java文件夹下
System.out.println("applicationContext2.xml文件位置直接在src/main/java文件夹下");
System.out.println("使用FileSystemXmlApplicationContext的两种读取方法");
//假如applicationContext1文件在com.trans.pathdemo下面,可以采取这样的读取方法
ApplicationContext actx = new FileSystemXmlApplicationContext("src/main/java/applicationContext2.xml");
ApplicationContext actx2= new FileSystemXmlApplicationContext("classpath:applicationContext2.xml");
System.out.println("使用ClassPathXmlApplicationContext的读取方法");
ApplicationContext appContext=new ClassPathXmlApplicationContext("applicationContext2.xml");
System.out.println("-------------------------");
System.out.println("applicationContext1.xml文件位置直接在src/main/java/ com.trans.pathdemo下面");
System.out.println("使用FileSystemXmlApplicationContext的两种读取方法");
ApplicationContext actx1 = new FileSystemXmlApplicationContext("src/main/java/com/Trans/pathdemo/applicationContext1.xml");
ApplicationContext actx3 = new FileSystemXmlApplicationContext("classpath:com/Trans/pathdemo/applicationContext1.xml");
System.out.println("使用ClassPathXmlApplicationContext的读取方法");
ApplicationContext appContext1=new ClassPathXmlApplicationContext("com/Trans/pathdemo/applicationContext1.xml");
System.out.println("-------------------------");
System.out.println("applicationContext3.xml文件位置直接在src/main/resources文件夹下");
ApplicationContext actx4 = new FileSystemXmlApplicationContext("src/main/resources/applicationContext3.xml");
ApplicationContext actx5 = new FileSystemXmlApplicationContext("classpath:applicationContext3.xml");
System.out.println("使用ClassPathXmlApplicationContext的读取方法");
ApplicationContext appContext5=new ClassPathXmlApplicationContext("applicationContext3.xml");
System.out.println("-------------------------");
}