解決SpringBoot整合Mybatis掃描不到Mapper的問題
閑來無事,想學學springboot,開始搭建一個項目,但是一直顯示mapper掃描不到的錯誤:
“Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘userController': Unsatisfied dependency expressed through field ‘userMapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type ‘com.minibike.bike.user.dao.UserMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}”
“Field userMapper in com.minibike.bike.user.controller.UserController required a bean of type ‘com.minibike.bike.user.dao.UserMapper' that could not be found.”
于是在網(wǎng)上找解決方案,都是治標不治本,不得不說現(xiàn)在的博客質(zhì)量下降的厲害,太誤導人了,打開好多個都是一樣的內(nèi)容,難道沒人遇到的錯誤一樣,連包名和類名也一樣嗎?有的人抄別人博客,類名和包名都懶得換一下?
最后解決方案是在Application.java主類上加注解@MapperScan(“com.minibike.bike.user.dao”)。括號中引號里邊是mapper所在包路徑。
加上注解后不再報錯,也能正常輸出oooo
第一次接觸springboot,昨天下午到今早一直沒找到問題所在,后來查文檔、注解,然后不斷嘗試,最后終于解決。
當然這個只是我個人項目開發(fā)中遇到的問題解決辦法,不一定通用,但是如過遇到這樣的問題,也可以一試。
補充知識:springboot 項目配置掃描mapper接口類的兩種方法
一種是在啟動類上加@MapperScan({"com.**.dao","com.**.dao.*"}) 掃描mapper接口文件所在的包,多個包的時候用英文半角逗號隔開;
一種是在mapper接口文件上加@Mapper注解。如下
import org.apache.ibatis.annotations.Mapper;
以上這篇解決SpringBoot整合Mybatis掃描不到Mapper的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
java后端把數(shù)據(jù)轉換為樹,map遞歸生成json樹,返回給前端(后臺轉換)
這篇文章主要介紹了java后端把數(shù)據(jù)轉換為樹,map遞歸生成json樹,返回給前端實例(后臺轉換),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-01-01SpringBoot 實戰(zhàn) 之 優(yōu)雅終止服務的方法
本篇文章主要介紹了SpringBoot 實戰(zhàn) 之 優(yōu)雅終止服務的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-05-05Java畢業(yè)設計實戰(zhàn)之食品溯源系統(tǒng)的實現(xiàn)
這是一個使用了java+Springboot+Maven+mybatis+Vue+mysql+wd開發(fā)的食品溯源系統(tǒng),是一個畢業(yè)設計的實戰(zhàn)練習,具有食品溯源該有的所有功能,感興趣的朋友快來看看吧2022-01-01Java連接SAP RFC實現(xiàn)數(shù)據(jù)抽取的示例詳解
這篇文章主要為大家學習介紹了Java如何連接SAP RFC實現(xiàn)數(shù)據(jù)抽取的功能,文中的示例代碼講解詳細,具有一定的參考價值,需要的可以了解下2023-08-08