springboot項(xiàng)目中mapper.xml文件找不到的三種解決方案
通常mapper文件找不到會(huì)報(bào)這種異常:
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
主要是因?yàn)槭褂胢aven在編譯項(xiàng)目時(shí),會(huì)默認(rèn)不打包java文件夾下的xml文件 所以我們在執(zhí)行時(shí) 會(huì)報(bào)上面的異常
最近自己遇到了這種問題 查資料啥的找到了以下
三種解決方式
1.如果你的mapper映射文件也是放在 Java文件下
你可以直接在項(xiàng)目編譯后 把mapper文件復(fù)制到
編譯后的target文件夾下對應(yīng)的文件中去
在mapper文件下新建一個(gè)xml文件夾 把xml文件復(fù)制到這里面來即可,不過每次都這樣也挺麻煩的
2.在pom.xml中配置
<build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources> </build>
表示 maven在打包時(shí)不會(huì)過濾src/main/java文件夾下的xml文件
在application.properties文件中配置
#配置mapper xml文件的路徑 mybatis-plus.mapper-locations=classpath:com/lcx/educms/mapper/xml/*.xml
項(xiàng)目重新編譯后 查看你的target文件 會(huì)發(fā)現(xiàn)它把xml文件 打包進(jìn)去了
3.把xml文件放在resources文件下
在application.properties文件中配置
#配置mapper xml文件的路徑 mybatis-plus.mapper-locations=classpath:/mapper/*.xml
同樣這種方式也可以
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
java仿Servlet生成驗(yàn)證碼實(shí)例詳解
這篇文章主要介紹了java仿Servlet生成驗(yàn)證碼實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-04-04Java如何通過線程解決生產(chǎn)者/消費(fèi)者問題
這篇文章主要介紹了Java如何通過線程解決生產(chǎn)者/消費(fèi)者問題,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下2020-10-10@SpringBootTest 注解報(bào)紅問題及解決
這篇文章主要介紹了@SpringBootTest 注解報(bào)紅問題及解決,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11