使用注解方式整合ssm时,启动tomcat扫描不到resource下面的xxxmapper.xml问题,解决方法

解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.xxx.mapper.方法
在Spring与Mybatis整合时,可能会遇到这样的报错

原因:

其原因为mapper路径的映射错误,表示在尝试执行某个 Mapper 接口的方法时,MyBatis 无法找到对应的 SQL 语句。

造成该错误的可能方式为:

在mapper接口文件上使用了@Mapper注解,在controller调用方法时则无法找到该方法,只能使用注解方式写sql语句才能被识别到,生成到mapper.xml文件中的sql语句无法被使用

修改方法:

1.将@Mapper注解改为@Reposity

2.在MybatisConfig配置文件中加入扫描mapper映射文件的语句

不要觉得在 MybatisConfig配置文件中的MapperScannerConfigurer类加入mapperScannerConfigurer.setBasePackage("com.xxx.mapper");,程序就可以扫描到xxxMapper.xml文件了,其实不然,还需要在SqlSessionFactoryBean类中加入一个语句:
sqlSessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath:mapper/*.xml"));

这样才能正确扫描到xxxMapper.xml文件和Mapper文件。

相关推荐
Lyyaoo.7 分钟前
【JAVA基础面经】线程的状态
java·开发语言
Hello小赵8 分钟前
C语言如何自定义链接库——编译与调用
android·java·c语言
希望永不加班12 分钟前
SpringBoot 配置绑定:@ConfigurationProperties
java·spring boot·后端·spring
悟空码字13 分钟前
MySQL性能优化的天花板:10条你必须掌握的顶级SQL分析技巧
java·后端·mysql
indexsunny16 分钟前
互联网大厂Java面试实战:Spring Boot、MyBatis与Kafka在电商场景中的应用
java·spring boot·面试·kafka·mybatis·电商·技术栈
殷紫川21 分钟前
CompletableFuture 异步编程全解:核心能力、编排方案、异常处理与超时控制
java
ss27325 分钟前
致Java初学者的一封信
java·开发语言
white-persist25 分钟前
【vulhub spring CVE-2018-1270】CVE-2018-1270 Spring Messaging 远程命令执行漏洞 完整复现详细分析解释
java·服务器·网络·数据库·后端·python·spring
如来神掌十八式30 分钟前
nginx + spring gateway+spring 服务_nginx 转发到 gateway
nginx·spring·gateway
潇洒畅想34 分钟前
1.1 从∑到∫:用循环理解求和与累积
java·数据结构·python·算法