WEB 项目中 JUNIT ContextConfiguration 注解找不到 webapp 目录中的配置文件

  • Post author:
  • Post category:其他


WEB 项目中 JUNIT ContextConfiguration 注解找不到 webapp 目录中的 Spring 配置文件



原因

以下写法是从类路径中获取配置文件

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"spring.xml","spring-mvc.xml"})



修改方法

指定配置文件的具体存放位置

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"file:src/main/webapp/spring.xml","file:src/main/webapp/spring-mvc.xml"})



项目目录结构

在这里插入图片描述



建议改成以下结构

将配置文件放在 webapp 目录中会导致很多单独的配置文件无法加载, 建议将配置文件放在类路径中, 这样使用加载比较方便, 将配置文件放在

在这里插入图片描述



将配置文件放在 webapp 目录中时 Spring 管理 MyBatis 的配置格式

<!-- 配置 MyBatis 要扫描的主配置文件,使用的数据源,和 Dao 接口配置文件 -->
<bean class="org.mybatis.spring.SqlSessionFactoryBean">
    <!-- 指定 MyBatis 使用的数据源 -->
    <property name="dataSource" ref="dataSource"/>
    <!-- 指定 MyBatis 的主配置文件 -->
    <property name="configLocation" value="file:../../SqlMapMapper.xml"/>
    <!-- 给指定包中的类都添加一个别名,默认的别名与类名相同,并且不区分大小写 -->
    <property name="typeAliasesPackage" value="com.bean"/>
    <!-- 引入指定包中的所有 dao 接口对应的写 SQL 语句的 XML 配置文件 -->
    <property name="mapperLocations" value="file:../../../com/mapper/*.xml"/>
</bean>

mapperLocations 属性值的格式是 “file:…/…/…/com/mapper/*.xml”

configLocation 属性值, MyBatis 的主配置文件试了几种路径都无法找到



版权声明:本文为kmswilliam原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。