解決mybatis中的mapper命名問題
mybatis mapper命名問題
mapper文件中id命名最好首字母小寫,避免讓mybatis認(rèn)為是一個(gè)類
<!--獲取供應(yīng)商列表-->
<resultMap id="ProviderList" type="Provider">
<result property="id" column="id"/>
<result property="proCode" column="proCode"/>
<result property="proName" column="proName"/>
<result property="proDesc" column="proDesc"/>
<result property="proContact" column="proContact"/>
<result property="proPhone" column="proPhone"/>
<result property="proAddress" column="proAddress"/>
<result property="creationDate" column="creationDate"/>
</resultMap>
<select id="getProviderList" parameterType="Provider" resultMap="ProviderList">
select * from smbms_provider provider
where proName like CONCAT('%', #{proName}, '%')
</select>
其中resultMap的id名稱為ProviderList ,會(huì)將ProviderList理解為一個(gè)類,映射不到
<resultMap id="ProviderList" type="Provider">
<result property="id" column="id"/>
<result property="proCode" column="proCode"/>
<result property="proName" column="proName"/>
<result property="proDesc" column="proDesc"/>
<result property="proContact" column="proContact"/>
<result property="proPhone" column="proPhone"/>
<result property="proAddress" column="proAddress"/>
<result property="creationDate" column="creationDate"/>
</resultMap>
會(huì)發(fā)生異常,正確寫法為將ProviderList的首字母小寫,即為避免問題mapper文件中id值小寫
Mybatis中接口和對應(yīng)的mapper文件命名為什么需要一樣?
背景:
自己對于Mybatis現(xiàn)階段只處于會(huì)用的階段,有些問題,自己還是想深入的了解一下。就拿Mybatis的接口文件和mapper文件命名需要一致來開始。
解決:
當(dāng)我們將接口和mapper文件放在同一個(gè)包里的時(shí)候,Mybatis會(huì)進(jìn)行自動(dòng)掃描,這種方式要注意此時(shí)java接口的名稱和mapper文件的名稱要相同,否則會(huì)報(bào)異常。
這個(gè)時(shí)候我們需要配置MapperScannerConfigurer來讓在 Spring 的 XML 配置文件中注冊所有的映射器。相反,你可以使用一個(gè) MapperScannerConfigurer,
它 將 會(huì) 查 找 類 路 徑 下 的 映 射 器 并 自 動(dòng) 將 它 們 創(chuàng) 建 成 MapperFactoryBean。
創(chuàng)建MapperScannerConfigurer:
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.bijian.study.dao" /> </bean>
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java 設(shè)計(jì)模式以虹貓藍(lán)兔的故事講解建造者模式
建造者模式,是一種對象構(gòu)建模式 它可以將復(fù)雜對象的建造過程抽象出來,使這個(gè)抽象過程的不同實(shí)現(xiàn)方法可以構(gòu)造出不同表現(xiàn)的對象。本文將通過示例講解建造者模式,需要的可以參考一下2022-04-04
SpringBoot自定義線程池,執(zhí)行定時(shí)任務(wù)方式
這篇文章主要介紹了SpringBoot自定義線程池,執(zhí)行定時(shí)任務(wù)方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04
Springboot 使用maven release插件執(zhí)行版本管理及打包操作
maven-release-plugin 可用于構(gòu)建release版本項(xiàng)目,實(shí)現(xiàn)自動(dòng)打tag、遞增版本號、分發(fā)release版本jar包至倉庫,接下來通過本文給大家介紹Springboot 使用maven release插件執(zhí)行版本管理及打包操作,需要的朋友可以參考下2022-03-03
tomcat報(bào)錯(cuò):Wrapper cannot find servlet class ...問題解決
這篇文章主要介紹了tomcat報(bào)錯(cuò):Wrapper cannot find servlet class ...問題解決的相關(guān)資料,需要的朋友可以參考下2016-11-11
java 實(shí)現(xiàn)讀取txt文本數(shù)據(jù)并以數(shù)組形式一行一行取值
今天小編就為大家分享一篇java 實(shí)現(xiàn)讀取txt文本數(shù)據(jù)并以數(shù)組形式一行一行取值,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07
Springboot項(xiàng)目編譯后未能加載靜態(tài)資源文件的問題
這篇文章主要介紹了Springboot項(xiàng)目編譯后未能加載靜態(tài)資源文件的問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08
Java項(xiàng)目如何打包成Jar的實(shí)現(xiàn)步驟
一般情況下我們都是使用Java項(xiàng)目直接部署發(fā)布,有時(shí)需要我們將寫好的項(xiàng)目打成jar包,方便后期調(diào)用,本文主要介紹了Java項(xiàng)目如何打包成Jar,感興趣的可以了解一下2023-11-11

