您好,登錄后才能下訂單哦!
這篇文章主要介紹了怎么解決mybatis中的mapper命名問題,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
mapper文件中id命名最好首字母小寫,避免讓mybatis認為是一個類
<!--獲取供應商列表--> <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 ,會將ProviderList理解為一個類,映射不到
<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>
會發生異常,正確寫法為將ProviderList的首字母小寫,即為避免問題mapper文件中id值小寫
自己對于Mybatis現階段只處于會用的階段,有些問題,自己還是想深入的了解一下。就拿Mybatis的接口文件和mapper文件命名需要一致來開始。
當我們將接口和mapper文件放在同一個包里的時候,Mybatis會進行自動掃描,這種方式要注意此時java接口的名稱和mapper文件的名稱要相同,否則會報異常。
這個時候我們需要配置MapperScannerConfigurer來讓在 Spring 的 XML 配置文件中注冊所有的映射器。相反,你可以使用一個 MapperScannerConfigurer,
它 將 會 查 找 類 路 徑 下 的 映 射 器 并 自 動 將 它 們 創 建 成 MapperFactoryBean。
創建MapperScannerConfigurer:
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.bijian.study.dao" /> </bean>
感謝你能夠認真閱讀完這篇文章,希望小編分享的“怎么解決mybatis中的mapper命名問題”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。