解決mybatis plus報(bào)錯(cuò)Invalid bound statement (not found):問題
mybatis plus報(bào)錯(cuò)Invalid bound statement (not found):
出現(xiàn)Invalid bound statement (not found) 異常
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.yk.yearmeet.modular.service.UserService.list
at com.baomidou.mybatisplus.core.override.PageMapperMethod$SqlCommand.<init>(PageMapperMethod.java:261)
at com.baomidou.mybatisplus.core.override.PageMapperMethod.<init>(PageMapperMethod.java:58)
at com.baomidou.mybatisplus.core.override.PageMapperProxy.cachedMapperMethod(PageMapperProxy.java:70)
at com.baomidou.mybatisplus.core.override.PageMapperProxy.invoke(PageMapperProxy.java:63)
at com.sun.proxy.$Proxy72.list(Unknown Source)
at com.baomidou.mybatisplus.extension.service.IService.list(IService.java:279)
at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
at com.baomidou.mybatisplus.core.override.PageMapperProxy.invokeDefaultMethod(PageMapperProxy.java:89)
at com.baomidou.mybatisplus.core.override.PageMapperProxy.invoke(PageMapperProxy.java:58)
at com.sun.proxy.$Proxy72.list(Unknown Source)
at com.yk.yearmeet.oss.OssTest.serviceTest(OssTest.java:35)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
上述日志詳情。
解決方案
我是因?yàn)?,在啟動類和配置類都進(jìn)行類MapperScaner的聲明


保留一個(gè)配置就可以了,這倆配置沖突。
還有以下幾種方向進(jìn)行分析問題
檢查是不是引入 jar 沖突
檢查 Mapper.java 的掃描路徑
方法一
在 Configuration 類上使用注解 MapperScan
@Configuration
@MapperScan("com.yourpackage.*.mapper")
public class YourConfigClass{
...
}方法二
在Configuration類里面,配置MapperScannerConfigurer
@Bean
public MapperScannerConfigurer mapperScannerConfigurer(){
MapperScannerConfigurer scannerConfigurer = new MapperScannerConfigurer();
//可以通過環(huán)境變量獲取你的mapper路徑,這樣mapper掃描可以通過配置文件配置了
scannerConfigurer.setBasePackage("com.yourpackage.*.mapper");
return scannerConfigurer;
}- 檢查命名空間是否正常? 檢查包掃描路徑typeAliasesPackage是否正常?如果掃描不到,MP 無法進(jìn)行預(yù)注入
- 檢查是否指定了主鍵?如未指定,則會導(dǎo)致 selectById 相關(guān) ID 無法操作,請用注解 @TableId 注解表 ID 主鍵。當(dāng)然 @TableId 注解可以沒有!但是你的主鍵必須叫 id(忽略大小寫)
- SqlSessionFactory不要使用原生的,請使用MybatisSqlSessionFactory
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- MyBatis嵌套查詢collection報(bào)錯(cuò):org.apache.ibatis.exceptions.TooManyResultsException
- mybatis-plus報(bào)錯(cuò)Not Found TableInfoCache異常問題
- 解決MybatisPlus批量插入數(shù)據(jù)報(bào)錯(cuò):Error getting generated key or setting result to parameter object問題
- 解決Mybatis報(bào)錯(cuò):org.apache.ibatis.reflection.ReflectionException: There is no getter for property named問題
相關(guān)文章
springboot實(shí)現(xiàn)防重復(fù)提交和防重復(fù)點(diǎn)擊的示例
這篇文章主要介紹了springboot實(shí)現(xiàn)防重復(fù)提交和防重復(fù)點(diǎn)擊的示例,幫助大家更好的理解和學(xué)習(xí)springboot框架,感興趣的朋友可以了解下2020-09-09
Java多線程提交按照時(shí)間順序獲取線程結(jié)果詳解流程
在工作中是否存在這樣的場景,多個(gè)線程提交執(zhí)行,你不想全部線程執(zhí)行結(jié)束了獲取結(jié)果,而是有線程完成返回結(jié)果就獲取消費(fèi)。本文提供該場景的工具類,可以直接用哦2021-11-11
java8如何用Stream查List對象某屬性是否有重復(fù)
這篇文章主要介紹了java8如何用Stream查List對象某屬性是否有重復(fù)的操作,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09
SpringCloud微服務(wù)集成Dubbo的詳細(xì)過程
Apache?Dubbo?是一款易用、高性能的?WEB?和?RPC?框架,同時(shí)為構(gòu)建企業(yè)級微服務(wù)提供服務(wù)發(fā)現(xiàn)、流量治理、可觀測、認(rèn)證鑒權(quán)等能力、工具與最佳實(shí)踐,這篇文章主要介紹了SpringCloud微服務(wù)集成Dubbo,需要的朋友可以參考下2024-03-03
jxl操作excel寫入數(shù)據(jù)不覆蓋原有數(shù)據(jù)示例
網(wǎng)上很多例子,都是用Jxl讀或者寫excel,本文實(shí)現(xiàn)的功能就是將數(shù)據(jù)源in.xls的第幾行第幾列數(shù)據(jù)寫入到out.xls的第幾行第幾列,不覆蓋out.xls其他原有的數(shù)據(jù)。2014-03-03

