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

解決mybatis中的mapper命名問題

瀏覽:9日期:2023-10-19 10:00:04
mybatis mapper命名問題

mapper文件中id命名最好首字母小寫,避免讓mybatis認為是一個類

<!--獲取供應商列表--> <resultMap 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 parameterType='Provider' resultMap='ProviderList'>select * from smbms_provider providerwhere proName like CONCAT(’%’, #{proName}, ’%’) </select>

其中resultMap的id名稱為ProviderList ,會將ProviderList理解為一個類,映射不到

<resultMap 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中接口和對應的mapper文件命名為什么需要一樣?背景:

自己對于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 數據庫
相關文章:
国产综合久久一区二区三区