久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

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

淺談Mybatis中resultType為hashmap的情況

瀏覽:65日期:2023-10-21 08:11:36

現在有一張user表

id ,name,age

我們進行一個簡單的查詢:

<select resultType='Uer'> select id ,name,age from user</select>

查詢完后,怎么去接收這個查詢結果呢,通常在這個mapper.xml對應的接口中使用List<User>做為返回值去接收,最后存儲的樣子就是下面的圖

淺談Mybatis中resultType為hashmap的情況

這是一個很簡單的單表查詢操作,其實這種簡單的單表查詢操作不需要引入User類,直接使用resultType='hashmap',接口中使用List<Object>做為返回值去接(hashmap也是對象的一種所以可以直接使用Obeject),讓查詢結果自動封裝成Map對象存入list中也可以返回

<select resultType='hashmap'> select id ,name,age from user</select>

當使用hashmap作為返回值類型時,Mybatis會自動將字段名作為key值,將對應的字段值作為value封裝到map中,一條記錄有多個字段,產生多個key-value鍵值對存到一個map對象中,多條記錄就會生成多個map對象,多個map對象存到list中返回

淺談Mybatis中resultType為hashmap的情況

注意:如果字段對應的值為空,那么在封裝map的時候,這個字段會直接被忽略調。

補充知識:resultType='java.util.HashMap' sql返回的null值,不在map里面

問:

mapper配置如下

<select resultType='java.util.HashMap'> select id,name,nickname,status from user order by create_time desc</select>

name, nickname 有的是null

這樣導致,查詢出來的map,本來map.size=4的

但是,如果查詢出來的name為null,那么返回的hashmap里面就沒有name了

同樣,nickname也是一樣,請問,如何解決這個問題

我不想在sql里面用nvl函數去做

答:

<settings> <setting name='callSettersOnNulls' value='true'/></settings>

把這個加到你的mybatis-config.xml里。

以上這篇淺談Mybatis中resultType為hashmap的情況就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Mybatis 數據庫
相關文章:
主站蜘蛛池模板: 五月天婷婷社区 | 一区二区免费 | 一本一道久久精品综合 | 精品乱子伦一区二区三区 | 国产成人无遮挡在线视频 | 国产高清免费视频 | 中文字幕一区二区三区四区 | 亚洲精品视频在线观看免费 | 夜添久久精品亚洲国产精品 | 中文字字幕一区二区三区四区五区 | 亚洲第一福利视频 | 国产区福利 | 午夜窝窝 | 久草精品视频在线播放 | 在线成人av | 亚洲另类视频 | 欧美成人h版在线观看 | 国产一区亚洲二区三区 | 国产一区二区三区视频在线观看 | 午夜影视av| 久久99精品久久久久久青青日本 | 日本久久久影视 | 韩国精品主播一区二区在线观看 | 国产精品久久9 | 中文字幕亚洲一区二区三区 | 成人看片免费 | 久久视频精品 | 午夜爽爽影院 | 久久久久久黄 | 在线观看免费视频日韩 | 精品成人免费视频 | www.久久99| 羞羞视频在线观看视频 | 伊人网网站 | 免费观看一级特黄欧美大片 | 国产伦精品一区二区三毛 | 久久久在线视频 | 久久精品国产77777蜜臀 | 日韩小视频网站 | 亚洲国产精品久久 | 久久精品一二三四 |