您的位置:首页 > 移动开发

用JUnit测试Spring中的配置,需要使用ApplicationContext

2011-08-22 14:13 369 查看
用JUnit测试Spring中的配置,需要使用ApplicationContext 将Spring的配置文件,如applicationContext.xml中的内容进行加载(更准确的说,应该是对各个Bean进行实例话),这样才能保证使用这些Bean的时候不会出现NullPointerException。

spring为ApplicationContext提供的3种实现分别为:ClassPathXmlApplicationContext,FileSystemXmlApplicationContext和XmlWebApplicationContext,其中XmlWebApplicationContext是专为Web工程定制的。使用举例如下:

1. FileSystemXmlApplicationContext

eg1. ApplicationContext ctx = new FileSystemXmlApplicationContext("bean.xml"); //加载单个配置文件

eg2.

String[] locations = {"bean1.xml", "bean2.xml", "bean3.xml"};

ApplicationContext ctx = new FileSystemXmlApplicationContext(locations ); //加载单个配置文件

eg3.
ApplicationContext ctx =new FileSystemXmlApplicationContext("D:/project/bean.xml");//根据具体路径加载文件

2. ClassPathXmlApplicationContext

eg1. ApplicationContext ctx = new ClassPathXmlApplicationContext("bean.xml");

eg2.

String[] locations = {"bean1.xml", "bean2.xml", "bean3.xml"};

ApplicationContext ctx = new ClassPathXmlApplication(locations);

注:其中FileSystemXmlApplicationContext和ClassPathXmlApplicationContext与BeanFactory的xml文件定位方式一样是基于路径的。

3. XmlWebApplicationContext

eg1. ServletContext servletContext = request.getSession().getServletContext();

ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletContext);
假设在配置文件中有一个bean为userDao,
private UserDao userDao = ctx.getBean("userDao");

接下来就是对userDao的方法的测试阶段了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐