org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 解释一下这句话的意思大体上说的是绑定的语句体没有找到。具体可从以下几个方面可以解决
- 检查 xml的namespace 是否是和Mapper接口一一对应。举个栗子:
按住ctrl 键,鼠标是否可以点击SysUserMapper 跳转到 Mapper接口中。
-
SysUserMapper 接口没有 对应的 SysUserMapper.xml 。
-
UserMapper 接口的方法 没有和xml的 返回类型 resultMap resultType 对应。编写对应即可。
-
还有一点就是在yml中 ,配置一下映射类所在的包名。
-
如果还是不行的话,那就试试这个,配置文件中知道mapper 文件的位置。
mapper-locations: classpath:mapper/*.xml
以下的mybatis plus 的yml 配置 大家可以参考一下
mybatis-plus:
# 实体扫描,多个package用逗号或者分号分隔
type-aliases-package: com.origin.service.domain
global-config:
db-config:
id-type: auto
table-underline: true
logic-delete-value: 1
logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
logic-delete-field: flag
banner: false
configuration:
# 配置返回数据库(column下划线命名&&返回java实体是驼峰命名),自动匹配无需as(没开启这个,SQL需要写as: select user_id as userId)
map-underscore-to-camel-case: true
cache-enabled: false
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
mapper-locations: classpath:mapper/*.xml
`
还是不行的话,那就看看启动类中是否增加了@MapperScan 注解。
`
@MapperScan("com.origin.service.domain.mapper")
`
大功告成。再见。宝宝们。