电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

淺談Springboot下引入mybatis遇到的坑點

瀏覽:44日期:2023-02-20 16:00:53
一、 springBoot + Mybatis

配置完成后,訪問數據庫遇到的問題

淺談Springboot下引入mybatis遇到的坑點

首先出現這個問題,肯定是xml文件與mapper接口沒有匹配上,甚至是xml文件根本沒有被掃描到。

于是會從配置上進行檢查:

1、 xml中的namespace命名是否與mapper接口路徑一致,需保證一致。

2、 application.properties或者application.yml文件中配置mybatis的屬性對否,如下:

淺談Springboot下引入mybatis遇到的坑點

第一行 typeAliasesPackage是實體類的包路徑;

第二行mapperLocations:是Mapper的xml文件存放的位置,當xml文件跟對應的Mapper接口處于同一位置的時候可以不用指定

該屬性的值。

3、 啟動類上加注解,如下:

淺談Springboot下引入mybatis遇到的坑點

推薦用這種方式掃描Mapper接口,另一種方式是在每一個mapper接口類上加注解

淺談Springboot下引入mybatis遇到的坑點

注意,上述兩種方式,必須有一種實現,不然無法啟動項目,會報mapper接口未注入,如下:

淺談Springboot下引入mybatis遇到的坑點

綜上,只要上面幾種情況都配置正確,一般就可以正常啟動,并訪問數據庫。

二、 springBoot + MybatisPlus

pom中需要修改包

淺談Springboot下引入mybatis遇到的坑點

我用同樣的原理,準備在springBoot中引入mybatisPlus,但是配置都檢查了,依舊報類似的錯誤:

淺談Springboot下引入mybatis遇到的坑點

于是根據報錯的信息,究其源碼:

1、 首先由于mybatis通過mapper接口來invoke具體的方法實現,其查詢的key是接口包名加方法名,如果找不到該key,就會報錯,具體代碼如下:

淺談Springboot下引入mybatis遇到的坑點

只有在configuration中找到了匹配的key,才會返回key對應的MappedStatement; 同樣調用selectById,可看到一下結果,能夠找到。很明顯而由于上面的selectById1方法是自定義實現的,其xml未被掃描到,還是配置的問題。

淺談Springboot下引入mybatis遇到的坑點

然后,再看源碼,為何configuration中找不到自定義的mapper方法,配置哪里有問題:

淺談Springboot下引入mybatis遇到的坑點 淺談Springboot下引入mybatis遇到的坑點

MybatisPlusAutoConfiguration是在啟動時,自動會讀取配置信息的,可以看到其中MybatisPlusProperties類型定義了前綴mybatis-plus,即只有前綴為mybatis-plus的配置信息才會被加載,而再看配置文件,如下,恍然大悟,mybatis的配置前綴寫錯了,修改成mybatis-plus,成功了!!!

淺談Springboot下引入mybatis遇到的坑點

后來發現,原來這跟開頭pom文件中導入的包版本有關系,

總結如下:

若使用的是mybatis,則要導入的包是下面這個,并且配置文件中mybatis的配置前綴是“mybatis”。

淺談Springboot下引入mybatis遇到的坑點

而若使用的是mybatis-plus,則需要導入的包是下圖,并且配置中mybatis的配置前綴是“mybatis-plus”。

淺談Springboot下引入mybatis遇到的坑點

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
主站蜘蛛池模板: 有机肥设备生产制造厂家,BB掺混肥搅拌机、复合肥设备生产线,有机肥料全部加工设备多少钱,对辊挤压造粒机,有机肥造粒设备 -- 郑州程翔重工机械有限公司 | 空调风机,低噪声离心式通风机,不锈钢防爆风机,前倾皮带传动风机,后倾空调风机-山东捷风风机有限公司 | 标准品网_标准品信息网_【中检计量】 | 万师讲师网-优质讲师培训师供应商,讲师认证,找讲师来万师 | 爱佩恒温恒湿测试箱|高低温实验箱|高低温冲击试验箱|冷热冲击试验箱-您身边的模拟环境试验设备技术专家-合作热线:400-6727-800-广东爱佩试验设备有限公司 | 恒温恒湿箱(药品/保健品/食品/半导体/细菌)-兰贝石(北京)科技有限公司 | 骨灰存放架|骨灰盒寄存架|骨灰架厂家|智慧殡葬|公墓陵园管理系统|网上祭奠|告别厅智能化-厦门慈愿科技 | 玻璃瓶厂家_酱菜瓶厂家_饮料瓶厂家_酒瓶厂家_玻璃杯厂家_徐州东明玻璃制品有限公司 | 臭氧老化试验箱,高低温试验箱,恒温恒湿试验箱,防水试验设备-苏州亚诺天下仪器有限公司 | 骨龄仪_骨龄检测仪_儿童骨龄测试仪_品牌生产厂家【品源医疗】 | 铸钢件厂家-铸钢齿轮-减速机厂家-淄博凯振机械有限公司 | 拉力机-拉力试验机-万能试验机-电子拉力机-拉伸试验机-剥离强度试验机-苏州皖仪实验仪器有限公司 | 合肥宠物店装修_合肥宠物美容院装修_合肥宠物医院设计装修公司-安徽盛世和居装饰 | 塑料薄膜_PP薄膜_聚乙烯薄膜-常州市鑫美新材料包装厂 | 编织人生 - 权威手工编织网站,编织爱好者学习毛衣编织的门户网站,织毛衣就上编织人生网-编织人生 | 睿婕轻钢别墅_钢结构别墅_厂家设计施工报价| 万烁建筑设计院-建筑设计公司加盟,设计院加盟分公司,市政设计加盟 | 锂离子电池厂家-山东中信迪生电源| 山东活动策划|济南活动公司|济南公关活动策划-济南锐嘉广告有限公司 | 酒店品牌设计-酒店vi设计-酒店标识设计【国际级】VI策划公司 | 泰国试管婴儿_泰国第三代试管婴儿_泰国试管婴儿费用/多少钱_孕泰来 | 长沙广告公司|长沙广告制作设计|长沙led灯箱招牌制作找望城湖南锦蓝广告装饰工程有限公司 | 布袋除尘器|除尘器设备|除尘布袋|除尘设备_诺和环保设备 | 广东风淋室_广东风淋室厂家_广东风淋室价格_广州开源_传递窗_FFU-广州开源净化科技有限公司 | 洗石机-移动滚筒式,振动,螺旋,洗矿机-青州冠诚重工机械有限公司 | 不锈钢丸厂家,铝丸,铸钢丸-淄博智源铸造材料有限公司 | 山东螺杆空压机,烟台空压机,烟台开山空压机-烟台开山机电设备有限公司 | 聚氨酯催化剂K15,延迟催化剂SA-1,叔胺延迟催化剂,DBU,二甲基哌嗪,催化剂TMR-2,-聚氨酯催化剂生产厂家 | 搜木网 - 木业全产业链交易平台,免费搜货、低价买货! | 亿立分板机_曲线_锯片式_走刀_在线式全自动_铣刀_在线V槽分板机-杭州亿协智能装备有限公司 | 电杆荷载挠度测试仪-电杆荷载位移-管桩测试仪-北京绿野创能机电设备有限公司 | 广州冷却塔维修厂家_冷却塔修理_凉水塔风机电机填料抢修-广东康明节能空调有限公司 | 石英砂矿石色选机_履带辣椒色选机_X光异物检测机-合肥幼狮光电科技 | 彼得逊采泥器-定深式采泥器-电动土壤采样器-土壤样品风干机-常州索奥仪器制造有限公司 | 精密线材测试仪-电线电缆检测仪-苏州欣硕电子科技有限公司 | SEO网站优化,关键词排名优化,苏州网站推广-江苏森歌网络 | 冲锋衣滑雪服厂家-冲锋衣定制工厂-滑雪服加工厂-广东睿牛户外(S-GERT) | 粘度计维修,在线粘度计,二手博勒飞粘度计维修|收购-天津市祥睿科技有限公司 | 防伪溯源|防窜货|微信二维码营销|兆信_行业内领先的防伪防窜货数字化营销解决方案供应商 | 砖机托板价格|免烧砖托板|空心砖托板厂家_山东宏升砖机托板厂 | 采暖炉_取暖炉_生物质颗粒锅炉_颗粒壁炉_厂家加盟批发_烟台蓝澳采暖设备有限公司 |