单元测试时,mapper 中的 xml 配置的 sql 报错
·

解决方案一:将 mapper 类和 mapper.xml 放在同一个包下,失败
解决方案二:在启动类上加上包扫描
@SpringBootApplication
@MapperScan("com.wf.dao")
public class YourApplicationClass {
//...
}
失败
解决方案三:在 yml 配置文件中指定该 xml 文件的扫描
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
global-config:
db-config:
#数据库表的前缀
table-prefix: ms_
mapper - locations: classpath:com/wf/dao/TagMapper.xml
失败,不过可以排除是包扫描问题
解决方案四:检查 XML 文件的编译和打包
在 pom.xml 中指定编译和打包要包含 xml 文件
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>
失败
(2024-11-15) 成功解决该报错,解决方法:
发现问题原因是由于 xml 配置文件和 mapper 接口的位置不对
mapper 接口应该放在 dao 层的 mapper 包里,而 xml 应该放在 resources 的对应目录下
将其位置移动后成功解决:
更多推荐

所有评论(0)