假设Spring配置文件为applicationContext.xml
一、Spring配置文件在类路径下面
在Spring的java应用程序中,一般我们的Spring的配置文件都是放在放在类路径下面(也即编译后会进入到classes目录下)。
以下是我的项目,因为是用maven管理的,所以配置文件都放在“src/main/resources”目录下
这时候,在代码中可以通过
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
然后获取相应的bean。
如果代码想用Junit测试框架来测试,则Spring提供了对Junit支持,还可以使用注解的方式:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"classpath:applicationContext.xml"})
只需要在相应的Test类前面加上此两个注解(第二个注解用来指明Spring的配置文件位置),就可以在Junit Test类使用中Spring提供的依赖注入功能。
二、Spring配置文件在WEB-INF下面
当然在做J2EE开发时,有些人习惯把Spring文件放在WEB-INF目录(虽然更多人习惯放在类路径下面)下面;或者有些Spring配置文件是放在类路径下面,而有些又放在
WEB-INF目录下面,如下图。
这时候,在代码中就不可以使用ClassPathXmlApplicationContext来加载配置文件了,而应使用FileSystemXmlApplicationContext。
ApplicationContext applicationContext = new FileSystemXmlApplicationContext("src/main/webapp/WEB-INF/applicationContext.xml");
然后获取相应的bean。
如果代码想用Junit测试框架来测试,则Spring提供了对Junit支持,还可以使用注解的方式:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"file:src/main/webapp/WEB-INF/applicationContext.xml"})
只需要在相应的Test类前面加上此两个注解(第二个注解用来指明Spring的配置文件位置),就可以在Junit Test类使用中Spring提供的依赖注入功能。
下面是我的一个Spring管理下的Junit测试类:
package com.sohu.group.service.external;
import java.util.List;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({"file:src/main/webapp/WEB-INF/applicationContext.xml"})
public class SuFriendServiceImplOverRMITest {
@Autowired
private SuFriendService suFriendService;
@Test
public void getUserFollowerListTest(){
List<String> list = suFriendService.getUserFollowerList("liug_talk@163.com");
System.out.println("------"+list);
}
}
分享到:
相关推荐
springmybatis spring、springmvc和mybatis的结合,maven构造,加入junit测试
spring-test-junit5, JUnit ( a )的spring TestContext框架扩展( a ) spring 5测试支持这个项目作为 5的正式 Prototype,在 spring TestContext框架测试支持,并与 SPR-13575结合到 Spring Framework 。 因此,在...
spring-junit-Selenium 这个项目是一个简单的例子,展示了如何结合 Spring、JUnit 和 Selenium 来实现用户自动化验收测试。
针对spring和hibernate框架进行的测试原理和例子,最好结合我发布的关于Junit测试一起看!
结合spring 单元测试需要的jar包,Spring整合Junit测试,希望对大家有帮助,谢谢啊!
与Spring Boot,Elasticsearch,Testcontainers和JUnit5的集成测试 一个简单的示例,演示测试容器,Elasticsearch和JUnit 5如何一起玩。 二手技术 Spring Boot 2.4.3 Kotlin1.4.31 带有Elasticsearch 7.10.1 ...
如何将Spock模拟注入到Spring集成测试中该项目旨在用作示例指南,以说明如何将Spock与Spring(和Spring Boot)结合使用,并结合使用Spring配置和Spock模拟。 有时,您想使用整个Spring上下文进行更完整的集成测试。 ...
spring和mybatis的完美结合 具体的pom.xml如下 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0 <groupId>...
让我们在开发中以及开发后期进行测试时,直接使用Junit结合spring一起测试。 本套课程中,我们将全面剖析Spring和SpringMVC两个部分。从应用场景分析,到基本用法的入门案例,再到高级特性的分析及使用,最后是执行...
JUnit Insights是JUnit 5的扩展(可以选择与Spring框架结合使用), 测量每个测试类中每个测试方法的设置,执行和拆卸时间 (可选)度量创建Spring上下文的频率以及该过程需要多长时间 创建一个外观漂亮的报告,以...
9.5.9. 结合AspectJ使用 @Transactional 9.6. 编程式事务管理 9.6.1. 使用TransactionTemplate 9.6.2. 使用PlatformTransactionManager 9.7. 选择编程式事务管理还是声明式事务管理 9.8. 与特定应用服务器集成 ...
9.5.9. 结合AspectJ使用 @Transactional 9.6. 编程式事务管理 9.6.1. 使用TransactionTemplate 9.6.2. 使用PlatformTransactionManager 9.7. 选择编程式事务管理还是声明式事务管理 9.8. 与特定应用服务器集成 ...
网上的东西好大多都不能直接用,自己结合网上资料做了一个Struts2+Spring3+MyBatis3的测试工程,JUnit测试用例和WEB服务。 内涵完整jar包,解压直接可用,包括一个表文件。 Eclipse3.2+Tomcat/5.5+jdk1.5.0_17 - ...
此单元测试基于spring的AbstractJUnit4SpringContextTests,你需要添加spring的关于单元测试的支持 在类上标注@ContextConfiguration(locations="classpath:applicationContext.xml")意思是去classpath路径下加载...
第一部份:介绍实例架构 结合实例讲解Web项目总体结构 分析多层结构优点 具体讲解每个层次的实现技巧 第二部分:介绍组织层次关联利器(Spring...第六部分:介绍软件测试与部署 借助Junit的单元测试 借助Ant的自动部署
熟练使用JUnit结合DBUnit、EasyMock等测试工具,并了解Hamcrest、Suite、Stub等测试原理; 熟悉Linux常用命令; 熟练使用Git、SVN代码管理工具; 熟练使用Dubbo、ZooKeeper搭建分布式项目; 了解shiro进行权限认证与...
创建此示例项目是为了结合 spring-security 讨论正确的 spring-boot 应用程序配置。 当前状态 应用程序的安全配置和集成测试的安全配置。 感谢 Stack Overflow 的 Kris,该应用程序现在按预期工作。 解决方案 如 ...
SpringBoot Jpa 结合Spring事物Aop,单元测试Junit,Restful Api风格的 小样例,自定义Exception捕获异常等
就以前做的一个项目为例, 这个项目是以Struts+Spring+iBatis为框架扩展起来的一个Java Web项目,最初只是用JUnit对业务层的Business Class进行测试,后来逐步扩展到演示层和持久层.并结合了CruiseControl 进行持续集成...
将Spring Form Elements与JSP页面和MVC概念结合使用的最佳实践。 具有服务层和控制器对象的Spring MVC模式。 在带有Hibernate的MySql上进行CRUD操作以及对jdbc查询的注释示例 将Dispatcher Servlet与web.xml一起...