`

Junit 读取各路径下的 spring配置文件 ---- 2016-09-22

阅读更多

 

假设Spring配置文件为applicationContext.xml


一、Spring配置文件在类路径下面

在Spring的java应用程序中,一般我们的Spring的配置文件都是放在放在类路径下面(也即编译后会进入到classes目录下)。

以下是我的项目,因为是用maven管理的,所以配置文件都放在“src/main/resources”目录下

 

这时候,在代码中可以通过

[java] view plain copy
 
  1. ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");  

然后获取相应的bean。

 

如果代码想用Junit测试框架来测试,则Spring提供了对Junit支持,还可以使用注解的方式:

[java] view plain copy
 
  1. @RunWith(SpringJUnit4ClassRunner.class)  
  2. @ContextConfiguration(locations={"classpath:applicationContext.xml"})  

只需要在相应的Test类前面加上此两个注解(第二个注解用来指明Spring的配置文件位置),就可以在Junit Test类使用中Spring提供的依赖注入功能。

 

 

二、Spring配置文件在WEB-INF下面

当然在做J2EE开发时,有些人习惯把Spring文件放在WEB-INF目录(虽然更多人习惯放在类路径下面)下面;或者有些Spring配置文件是放在类路径下面,而有些又放在

WEB-INF目录下面,如下图。

 

这时候,在代码中就不可以使用ClassPathXmlApplicationContext来加载配置文件了,而应使用FileSystemXmlApplicationContext。

[java] view plain copy
 
  1. ApplicationContext applicationContext = new FileSystemXmlApplicationContext("src/main/webapp/WEB-INF/applicationContext.xml");  

然后获取相应的bean。

 

 

如果代码想用Junit测试框架来测试,则Spring提供了对Junit支持,还可以使用注解的方式:

 

[java] view plain copy
 
  1. @RunWith(SpringJUnit4ClassRunner.class)  
  2. @ContextConfiguration(locations={"file:src/main/webapp/WEB-INF/applicationContext.xml"})   

只需要在相应的Test类前面加上此两个注解(第二个注解用来指明Spring的配置文件位置),就可以在Junit Test类使用中Spring提供的依赖注入功能。

 

 

下面是我的一个Spring管理下的Junit测试类:

 

[java] view plain copy
 
  1. package com.sohu.group.service.external;  
  2.   
  3. import java.util.List;  
  4.   
  5. import org.junit.Test;  
  6. import org.junit.runner.RunWith;  
  7. import org.springframework.beans.factory.annotation.Autowired;  
  8. import org.springframework.test.context.ContextConfiguration;  
  9. import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;  
  10.   
  11. @RunWith(SpringJUnit4ClassRunner.class)  
  12. @ContextConfiguration({"file:src/main/webapp/WEB-INF/applicationContext.xml"})  
  13. public class SuFriendServiceImplOverRMITest {  
  14.   
  15.     @Autowired  
  16.     private SuFriendService suFriendService;  
  17.       
  18.     @Test  
  19.     public void getUserFollowerListTest(){  
  20.         List<String> list = suFriendService.getUserFollowerList("liug_talk@163.com");  
  21.         System.out.println("------"+list);  
  22.     }  
  23. }  

原文地址:http://blog.csdn.net/rj042/article/details/7549462

 

分享到:
评论

相关推荐

    spring-mvc开发所有jar包【4.3.4】

    5. **spring-beans-4.3.4.RELEASE.jar**:Bean工厂和元数据读取模块,用于创建、配置和管理Bean。它支持XML和注解方式的Bean定义。 6. **spring-test-4.3.4.RELEASE.jar**:提供了对Spring应用进行单元测试和集成...

    Spring Junit单元测试加载配置文件失败问题

    当我们在单元测试中使用@ContextConfiguration加载配置文件时,Spring Junit将只能找到src/test/resources目录下的配置文件,无法找到src/main/resources目录下的配置文件。这将导致单元测试时无法注入类,无法正常...

    spring-framework-4.2.4.RELEASE-dist,Spring4.2.4所需要的所有jar包

    DI允许开发者在运行时通过配置文件或注解来注入对象之间的依赖,而不是硬编码。 2. **Spring Bean容器**:Bean容器(ApplicationContext)负责创建、管理对象(称为Beans)及其依赖关系。它读取配置元数据(XML、...

    spring boot - mybatis

    - **配置MyBatis**:在主配置类上添加`@MapperScan`注解,指定扫描Mapper接口的包路径。 ```java @SpringBootApplication @MapperScan("com.example.demo.mapper") public class DemoApplication { public ...

    spring-mahout-demo

    1. **Spring配置**:Spring配置文件中会包含对Mahout的依赖声明,例如导入Mahout的Maven坐标,以便在项目中自动管理Mahout的库。此外,可能还会有针对Mahout服务的bean定义,以便在Spring上下文中注入并使用。 2. *...

    spring-boot-06-crud

    在本项目"spring-boot-06-crud"中,我们主要关注的是如何使用Spring Boot实现一个基本的CRUD(创建、读取、更新、删除)功能。Spring Boot是Java开发中的一个流行框架,它简化了配置,使得快速构建可运行的应用程序...

    ant配置文件

    标题“ant配置文件”指的是Ant项目中的核心文件——build.xml。这个文件是Ant构建过程的蓝图,包含了所有构建任务和它们的依赖关系。它定义了如何编译源代码、打包应用、执行测试以及部署项目。在myEclipse这样的...

    Spring Boot 学习笔记完整教程.pdf

    - 配置应用:Spring Boot允许用户进行静态资源处理、任务调度、自定义配置文件读取等,以及自定义启动Banner和配置文件的热部署。 - 系统监控:Spring Boot可以集成Spring Actuator,帮助开发者监控和管理生产环境中...

    Spring框架笔记

    - 创建Spring配置文件(如 `applicationContext.xml`),用于配置Bean的实例化信息。 **步骤3:编写代码** - 在Java类中通过Spring容器获取Bean实例。 - 使用Spring提供的API来进行依赖注入。 #### 三、Spring ...

    spring mvc

    - **初始化**:读取配置文件并初始化 Spring 容器。 - **请求处理**:处理所有进入系统的 HTTP 请求。 - **响应生成**:根据处理结果生成最终的 HTTP 响应。 #### 五、Spring MVC 双亲上下文说明 在 Spring MVC 中...

    Spring入门

    - **程序结构**:通常涉及创建一个Spring配置文件(如XML或注解配置),该文件描述了Spring容器应如何创建和配置bean。 - **Bean定义**:Bean是Spring框架的基本单位,可以是任何类型的Java对象,由Spring容器负责...

    SpringBoot实战书本源码

    5. **YAML/Properties配置**:Spring Boot支持YAML和Properties两种格式的配置文件,源码会展示如何读取和使用这些配置,以及如何进行环境变量的配置管理。 6. **数据访问**:包括JPA(Java Persistence API)和...

    22-17-加依娜尔-6.19-实训心得.doc

    - Spring通过XML配置文件或注解方式来管理Bean。 - XML配置方式: - 在`beans.xml`配置文件中定义Bean及其属性。 - 使用`&lt;bean&gt;`标签来声明一个Bean。 - 可以通过`&lt;property&gt;`标签来注入依赖。 - 注解方式: - ...

    jbehave-spring-sample

    4. **配置Spring**: 在`src/test/resources`下创建Spring配置文件,定义bean和它们的依赖关系。可以使用`@ContextConfiguration`注解在测试类上指定配置文件位置。 5. **配置JBehave-Spring**: 使用`...

    Spring基础教程

    4. **配置Hibernate和Transaction**:在Spring配置文件中配置Hibernate相关参数,并设置事务管理器。 5. **加载Spring的applicationContext.xml文件**:此文件用于定义Spring容器的bean实例及其依赖关系。 6. **...

    spring-hibernate-mysql:基于自学 spring + hibernate 初始提交的项目基于 http 上的教程

    7. **配置**:项目中将包含Spring和Hibernate的配置文件,用于设置数据源、事务管理器、实体扫描路径等。Spring的配置文件可能包含bean定义,而Hibernate的配置文件会指定数据库连接参数和实体映射信息。 8. **...

    spring快速入门教程

    - 编写 Spring 的配置文件 `applicationContext.xml`,并在其中定义所有的 Bean 和它们之间的依赖关系。 6. **设置业务代理 (Business Delegates) 和 DAO 的依赖性**: - 定义业务代理类,这些类作为 Web 层和...

    spring基础教程

    通过使用Spring管理事务,开发者可以不依赖于底层API,而是通过配置文件或注解来声明事务管理。 - 事务管理能够确保数据的一致性,提供回滚机制,防止数据在发生错误时处于不一致的状态。 4. 创建和配置Spring应用...

Global site tag (gtag.js) - Google Analytics