<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
本篇文章主要介紹關於我在SpringBoot
中使用MyBatis-Plus
是如何解決Invalid bound statement (not found)
這個異常的。我先拋一些我在這個途中遇到的一些問題,看看各位瞭解不瞭解。
Mybatis
的xml
檔案不在resouce
下時該如何設定。mapper-Location
的設定。classpath*
跟classpath
的區別是啥以上就是我遇到這個問題之後總結的三個問題。
作者來了一下新公司,這邊的框架看的我很悶,特別是關於mybatis的一些用法。這邊的sql都是用註解寫在Mapper檔案上。
例如:
@Select("SELECT id,status, " + " actual_usage_id usage_id," + " location_id ," + " group_id ," + " breakdown_Level_id, " + " receive_persion_id " + "FROM " + " t_repair_workorder " + " ${ew.customSqlSegment} ") List<IndexDutyPageVo> dutyFaultPage(@Param(Constants.WRAPPER) Wrapper<?> wrappser);
整個專案全是這種寫法,我一開始以為是規範。後面問了一個老員工才知道。說以前這個專案是寫在xml的,但是後面改了一下架構之後xml的設定就掃描不到了。嗯嗯嗯…
這邊的專案結構,xml檔案不是放在resouce
下,並且具體的業務包是跟maven
引入進去的(這個就是我前文提到的架構改變了)。注意這兩個是重點。我猜測他們不會設定的點應該就是這個原因了吧。
竟然知道了問題就開始解決問題。
當Mybatis
的xml
檔案不在resouce
下時該如何設定。
Mybatis
中如果xml檔案不在resource
目錄下的話,預設打包是會被忽略的,所以需要在pom檔案中加一段設定。
<build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources> </build>
改完這個後重新build
一下,注意去檢視下target資料夾下是否xml
檔案。
如何去指定mapper-Location
的設定
mybatis-plus: mapper-locations: classpath*:top/**/*.xml ## top是我具體資料夾可以不要, **的意思代表一個或者多個目錄
classpath*
跟classpath
的區別是啥
這個問題是重點要考的記一下,帶*
的話會掃描jar包下面的檔案,不帶*
只會掃描當前專案。
Invalid bound statement (not found)出現的原因是什麼?如何排查這個問題
這個報錯的出現,就是代表你的mapper
檔案跟xml
對映不到。如果你確保你的框架沒有問題下,其它的程式碼都能對映得到的情況,那麼你就要注意了,首先你的xml
檔案的名字跟Mapper
檔案是不是一致的,方法名跟xml
的id
是不是一致的。如果你這兩個都對了,再去查你的mapper-locations
的設定,這裡沒問題,再去查編譯包。看看xml
編譯到了不。如果這些都沒問題。那人跟程式碼只要一個能跑就行。
其實使用xml
跟使用註解的形式都能完成需求,沒多大的區別。但是使用xml
的可讀性,以及易維護性。個人覺得比註解方式強太多了。此次問題的出現,關鍵在於架構的改變,架構者一想把xml
從resource
移除,二又想把業務模組熱插拔。這個想法是好的。但是做事做一半真的不太可取。
到此這篇關於SpringBoot使用MyBatis-Plus解決Invalid bound statement異常的文章就介紹到這了,更多相關SpringBoot 異常內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45