MyBatis字段名和屬性名不一致的解決方法
1. 字段取別名,和屬性名保持一致
映射文件
<mapper namespace="com.atguigu.mybatis.mapper.EmpMapper"> <!-- 字段名跟屬性名不一致情況下,如何處理映射關(guān)系--> <!-- Emp getEmpById(@Param("empId") Integer empId);--> <select id="getEmpById" resultType="Emp"> <!--方式一:給字段起別名,和屬性名保持一致--> select emp_id empId,emp_name empName,age,gender from t_emp where emp_id=#{empId} </select> </mapper>
2. 使用全局配置處理字段名和屬性名不一致
當(dāng)字段符合mysql要求,使用_線,而符合java的要求使用駝峰,
可以在mybatis核心配置設(shè)置一個(gè)全局配置,可以自動(dòng)將下劃線映射為駝峰。
<setting name="mapUnderscoreToCamelCase" value="true"/>
①核心配置文件
<!-- 設(shè)置全局配置 將下劃線映射為駝峰 --> <!--emp_id-empId; emp_Name-empName --> <settings> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings>
②映射文件
<select id="getEmpById" resultType="Emp"> select * from t_emp where emp_id=#{empId} </select>
3. 使用自定義映射resultMap處理字段名和屬性不一致情況
resultMap:設(shè)置自定義的映射關(guān)系
id:唯一標(biāo)識(shí)
type:處理映射關(guān)系的實(shí)體類的類型
標(biāo)簽:
id:處理主鍵和實(shí)體類中實(shí)現(xiàn)的映射關(guān)系
result:處理普通字段和實(shí)體類中屬性的映射關(guān)系
column:映射關(guān)系中的字段名,必須是sql查詢出某個(gè)字段
property:設(shè)置映射關(guān)系中的屬性的屬性名,必須是處理的實(shí)體類類型中的屬性名
映射文件
<resultMap id="empResultMap" type="Emp"> <id column="emp_id" property="empId"></id> <result column="emp_name" property="empName"></result> <result column="age" property="age"></result> <result column="gender" property="gender"></result> </resultMap> <select id="getEmpById" resultMap="empResultMap"> select * from t_emp where emp_id=#{empId} </select>
到此這篇關(guān)于MyBatis字段名和屬性名不一致的解決方法的文章就介紹到這了,更多相關(guān)MyBatis字段名和屬性名不一致內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringCloud如何使用Eureka實(shí)現(xiàn)服務(wù)之間的傳遞數(shù)據(jù)
這篇文章主要介紹了SpringCloud使用Eureka實(shí)現(xiàn)服務(wù)之間的傳遞數(shù)據(jù)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06Redis監(jiān)聽(tīng)過(guò)期的key實(shí)現(xiàn)流程詳解
本文主要介紹了Redis監(jiān)聽(tīng)key的過(guò)期時(shí)間,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02Spring Boot 整合持久層之JdbcTemplate
持久層是 Java EE 中訪問(wèn)數(shù)據(jù)庫(kù)的核心操作,Spring Boot 中對(duì)常見(jiàn)的持久層框架都提供了自動(dòng)化配置,例如 JdbcTemplate 、 JPA 等,Mybatis 的自動(dòng)化配置則是 Mybatis 官方提供的2022-08-08Java中字符串常見(jiàn)題之String相關(guān)講解
今天小編就為大家分享一篇關(guān)于Java中字符串常見(jiàn)題之String相關(guān)講解,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-01-01淺談SpringBoot是如何實(shí)現(xiàn)日志的
這篇文章主要介紹了淺談SpringBoot是如何實(shí)現(xiàn)日志的,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03詳解Spring MVC3返回JSON數(shù)據(jù)中文亂碼問(wèn)題解決
本篇文章主要介紹了Spring MVC3返回JSON數(shù)據(jù)中文亂碼問(wèn)題解決,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01SpringBoot實(shí)現(xiàn)短鏈接系統(tǒng)的使用示例
由于短鏈接可能涉及到用戶隱私和安全問(wèn)題,所以短鏈接系統(tǒng)也需要符合相關(guān)的數(shù)據(jù)保護(hù)和安全標(biāo)準(zhǔn),本文主要介紹了SpringBoot實(shí)現(xiàn)短鏈接系統(tǒng)的使用示例,感興趣的可以了解一下2023-09-09SpringBoot中使用HTTP客戶端工具Retrofit
這篇文章主要為大家介紹了SpringBoot中使用HTTP客戶端工具Retrofit方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06