Spring Junit 读取WEB-INF下的配置文件

假设Spring配置文件为applicationContext.xml

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

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

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

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

[java] view plaincopy

  1. ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");

然后获取相应的bean。

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

[java] view plaincopy

  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 plaincopy

  1. ApplicationContext applicationContext = new FileSystemXmlApplicationContext("src/main/webapp/WEB-INF/applicationContext.xml");

然后获取相应的bean。

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

[java] view plaincopy

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

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

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

[java] view plaincopy

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

Spring Junit 读取WEB-INF下的配置文件的相关文章

XStream互转String和XML,以及如何读取web的下的文件

在项目开发中有时要传输xm文件,要转换成字符串传输,而无法使用对象传输,所以要进行转换,所用进行总结下利用XStream进行string与XML对象之间的互转,以及在转换某一包下所有的类. XML文件的解析和创建,请参考:http://blog.csdn.net/oyyz111/article/details/22730983 首先,利用Spring的PathMatchingResourcePatternResolver进行某包下的class文件的读取,其中用ant的匹配模式,例如congfig

读取web应用下的资源文件(例如properties)

1 package gz.itcast.b_resource; 2 3 import java.io.IOException; 4 import java.io.InputStream; 5 import java.util.Properties; 6 7 import javax.servlet.ServletException; 8 import javax.servlet.http.HttpServlet; 9 import javax.servlet.http.HttpServletRe

spring读取classpath目录下的配置文件通过表达式去注入属性值.txt

spring读取配置文件: 1. spring加载配置文件: <context:property-placeholder location="classpath:config/system.properties"/> 2. 配置文件内容: YTZ_SPECIAL_USER_PHONE=13912622596,18721293900,18656253360 YTZ_SPECIAL_USER_PHONE2=13912622596,18721293900,18656253360

java读取resource目录下的配置文件

1:配置resource目录 下的文件 host: 127.0.0.1 port: 9300 2:读取    / 代表resource目录 InputStream in = this.getClass().getResourceAsStream("/config.properties"); Properties properties = new Properties(); try { properties.load(in); } catch (IOException e) { e.pr

使用IDEA搭建一个Spring + Spring MVC 的Web项目(零配置文件)

话不多说,直接上代码: 注解是Spring的一个构建的一个重要手段,减少写配置文件,下面解释一下一些要用到的注解: @Configuration 作用于类上面,声明当前类是一个配置类(相当于一个Spring的xml文件)@ComponentScan("xxx") 作用于类上面,自动扫描xxx包名下所有使用@Service.@Component.@Repository和@Controller的类,并注册为Bean@Bean 作用与类和方法上,相当于Spring配置文件bean节点@Ena

Detailed Error Information: Module IIS Web Core Notification 未知 Handler 尚未确定 Error Code 0x80070032 配置错误 无法读取配置节“spring”,因为它缺少节声明 配置文件 \\?\d:\用户目录\我的文档\visual studio 2015\Projects\LiS

Detailed Error Information: Module    IIS Web Core Notification    未知 Handler    尚未确定 Error Code    0x80070032 配置错误    无法读取配置节“spring”,因为它缺少节声明 配置文件    \\?\d:\用户目录\我的文档\visual studio 2015\Projects\LiShu\LiShu.WebApp\web.config 没有加载sping 的dll文件

读取web外的配置文件

一般web项目配置文件都放在classPath下面,读取的时候: 1 import java.io.InputStream; 2 import java.util.Properties; 3 public class DealConnection { 4 private static String url = ""; 5 private static String user = ""; 6 private static String pwd = "&quo

maven工程中读取resource目录下配置文件

在maven工程中,我们会将配置文件放到src/main/resources下面,例如 我们需要确认resource 下的文件编译之后存放的位置. 它编译的路径直接位于classes下面,这个路径其实就是classPath的路径,所以,在resources 根目录下的配置文件其实就是 classPath的路径. // 1. 声明静态数据源成员变量private static DataSource ds; // 2. 创建连接池对象static { Properties pp = new Prop

Linux shell脚本中如何读取跟shell脚本同一目录下的配置文件

配置文件如下 ##########BACKUP MYSQL CONFIG####### #database name db_name=test db_user=root db_pass=123456 #####backup day config begin ##### day_backupdir=/home/backup/db/day day_backup_fix=day day_interval=1 #####backup day config end ####### #####backup