解決mybatis無法給帶有下劃線屬性賦值問題
mybatis無法給帶有下劃線屬性賦值問
1、配置問題
<!-- 是否開啟自動駝峰命名規(guī)則(camel case)映射, --> <setting name="mapUnderscoreToCamelCase" value="true"/>
或者
//開啟駝峰映射 ? ? ? ? bean.getObject().getConfiguration().setMapUnderscoreToCamelCase(true);
mybatis配置文件設(shè)置了這項后,查詢出來的字段如果帶下劃線,那么就會去掉下劃線,然后采用java駝峰規(guī)則。比如數(shù)據(jù)庫字段Parent_id,那么查詢出來后,會轉(zhuǎn)為parentid,然后去實體類匹配對應(yīng)的字段。 因為你實體類里有下劃線,所以匹配不上。要么采用resultMap 要么禁用掉駝峰規(guī)則(不建議禁用)。如果不想改實體類的話,建議采用resultMap。
2、增加set方法轉(zhuǎn)換值的方式
原實體類
? ? public class demo { ?
? ? ? private String user_name; ?
? ? ? private Striing pass_word; ? ? ??
? ? ? public String getPass_word(){ ?
? ? ? ? ? ?return pass_word; ?
? ? ? } ?
? ? ? public void setPass_word(String pass_word){ ?
? ? ? ? ? ?this.pass_word=pass_word; ?
? ? ? } ? ? ??
? ? } ?原sql
select user_name,pass_word from demo;
這句sql在數(shù)據(jù)庫可以查到數(shù)據(jù),但是使用mybatis的實體類查詢就查不到了。
解決方法
在實體類中增加以下兩個set方法并把sql改為
select user_name as username,pass_word as password from demo;
使用實體類查詢數(shù)據(jù)庫實際上就是一個set的過程只需要把每個屬性增加一個set方法就好了
? ? public void setUsernaem(String user_name){ ?
? ? ? ? ? this.user_name=user_name; ?
? ? ?} ?
? ? ?public void setPassword(String pass_word){ ?
? ? ? ? ? this.pass_word=pass_word; ?
? ? ?} ?僅適用于不方便改實體類的情況
實體類中有下滑線字段無法賦值問題
實體類中有下滑線字段,mybatis無法賦值
- 直接將實體類中的下劃線去掉
- 返回值使用resultMap進行字段映射賦值
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
java實現(xiàn)將結(jié)果集封裝到List中的方法
這篇文章主要介紹了java實現(xiàn)將結(jié)果集封裝到List中的方法,涉及java數(shù)據(jù)庫查詢及結(jié)果集轉(zhuǎn)換的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2016-07-07
springboot+mybatis plus實現(xiàn)樹形結(jié)構(gòu)查詢
實際開發(fā)過程中經(jīng)常需要查詢節(jié)點樹,根據(jù)指定節(jié)點獲取子節(jié)點列表,本文主要介紹了springboot+mybatis plus實現(xiàn)樹形結(jié)構(gòu)查詢,感興趣的可以了解一下2021-07-07
mybatisplus 多表關(guān)聯(lián)條件分頁查詢的實現(xiàn)
本文主要介紹了mybatisplus 多表關(guān)聯(lián)條件分頁查詢的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-01-01
通過FeignClient調(diào)用微服務(wù)提供的分頁對象IPage報錯的解決
這篇文章主要介紹了通過FeignClient調(diào)用微服務(wù)提供的分頁對象IPage報錯的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03
springboot中server.ssl.key-store配置路徑的問題小結(jié)
這篇文章主要介紹了springboot中server.ssl.key-store配置路徑的問題,文中還記錄了Spring Boot SSL(https)實例,介紹在web程序中使用自簽名的SSL(HTTPS)證書及創(chuàng)建SSL認(rèn)證,感興趣的朋友跟隨小編一起看看吧2024-02-02
Spring Security基于HttpRequest配置權(quán)限示例詳解
這篇文章主要介紹了Spring Security基于HttpRequest配置權(quán)限示例詳解,我們在配置中配置的url被封裝成RequestMatcher,而hasRole被封裝成AuthorityAuthorizationManager,本文結(jié)合示例代碼講解的非常詳細(xì),需要的朋友可以參考下2024-03-03
SpringBoot+Redis Bitmap實現(xiàn)活躍用戶統(tǒng)計
Redis的Bitmap數(shù)據(jù)結(jié)構(gòu)是一種緊湊的位圖,它可以用于實現(xiàn)各種場景,其中統(tǒng)計活躍用戶是一種經(jīng)典的業(yè)務(wù)場景,下面我們就來學(xué)習(xí)一下SpringBoot如何利用Redis中的Bitmap實現(xiàn)活躍用戶統(tǒng)計吧2023-11-11

