关于spring的ApplicationContext接口的两个子类ClassPathXmlApplicatioonContext和FileSystemXmlApplicationContext

package cn.itcast.spring3.demo1;

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;

public class SpringTest1 {
	@Test
	//传统开发
	public void demo1(){
		//高度耦合
		HelloService helloService = new HelloServiceImpl();
		helloService.sayHello();
	}
/*	@Test
	//spring开发
	public void demo2(){
		//创建一个工厂类
		//ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
		ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
		HelloService helloService =(HelloService)applicationContext.getBean("userService");
		helloService.sayHello();
		//小结:ClassPathXmlApplicationContext类指classpath路径下。classpath路径指src编译后的class文件,xml/properties等配置文件自动复制一份到WebRoot/WEB-INF/classes/这个路径。所以有的博客说
		 //classpath路径指的是WEB-INF下的lib和classes路径是有问题的,不包含lib路径
	}*/
	@Test
	//spring开发
	public void demo3(){
		//创建一个工厂类
		//ApplicationContext applicationContext = new FileSystemXmlApplicationContext("WebRoot/applicationContext.xml");//applicationContext.xml放在WebRoot下
		//ApplicationContext applicationContext = new FileSystemXmlApplicationContext("WebRoot/WEB-INF/applicationContext.xml");//放在WebRoot/WEB-INF/路径下
		//ApplicationContext applicationContext = new FileSystemXmlApplicationContext("WebRoot/WEB-INF/lib/applicationContext.xml");//放在WebRoot/WEB-INF/lib/路径下
		ApplicationContext applicationContext = new FileSystemXmlApplicationContext("WebRoot/META-INF/applicationContext.xml");//放在WebRoot/META-INF/路径下
		//ApplicationContext applicationContext = new FileSystemXmlApplicationContext("classpath:applicationContext.xml");//classpath:指的就是编译后的WEB-INF下的classes下的文件
		//ApplicationContext applicationContext = new FileSystemXmlApplicationContext("applicationContext.xml");//放在spring3_day01工程下
		HelloService helloService =(HelloService)applicationContext.getBean("userService");
		helloService.sayHello();
		//小结:FileSystemXmlApplicationContext类只要xml配置文件放在工程里就行,然后参数指定具体磁盘文件路径即可
	}
}

猜你喜欢

转载自blog.csdn.net/qq_37273784/article/details/80183444