使用注解方式整合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文件。

相关推荐
鶴哥只手遮天2 小时前
Spring AI 2.0.1 深度解析-第 14 章 MCP 服务端(上):注解式实现与工具来源
java·人工智能·开源
鶴哥只手遮天2 小时前
Spring AI 2.0.1 深度解析-第 15 章 MCP 服务端(下):三种协议形态、Streamable 传输与状态管理
java·人工智能·开源
鶴哥只手遮天2 小时前
Spring AI 2.0.1 深度解析-第 16 章 向量存储(上):`VectorStore` 接口体系、`BatchingStrategy`
java·人工智能·开源
鶴哥只手遮天2 小时前
Spring AI 2.0.1 深度解析-第 12 章 工具循环的流式形态、Usage 累加与扩展体系
java·人工智能·开源
鶴哥只手遮天2 小时前
Spring AI 2.0.1 深度解析-第 23 章 模型供应商实现:从 `OpenAiSetup` 到 Bedrock
java·人工智能·开源
鶴哥只手遮天2 小时前
Spring AI 2.0.1 深度解析-第 06 章 内置 Advisor 全景:13 个实现逐个剖到源码级
java·人工智能·开源
鶴哥只手遮天2 小时前
Spring AI 2.0.1 深度解析-第 03 章 消息体系与 Prompt:不可变模型、`ChatOptions` 与模板渲染
java·人工智能·开源
鶴哥只手遮天2 小时前
Spring AI 2.0.1 深度解析-第 24 章 生产实践与 2.x 迁移:陷阱清单、AOT 与调优
java·人工智能·开源
鶴哥只手遮天2 小时前
Spring AI 2.0.1 深度解析-第 10 章 工具调用(中):执行链路、结果转换与工具限制
java·人工智能·开源
鶴哥只手遮天2 小时前
Spring AI 2.0.1 深度解析-第 13 章 MCP 客户端:传输、工具聚合与命名冲突
java·人工智能·开源