最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談Mybatis中resultType為hashmap的情況

 更新時(shí)間:2020年12月02日 08:37:37   作者:會(huì)飛的豬os  
這篇文章主要介紹了淺談Mybatis中resultType為hashmap的情況,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

現(xiàn)在有一張user表

id ,name,age

我們進(jìn)行一個(gè)簡(jiǎn)單的查詢:

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

查詢完后,怎么去接收這個(gè)查詢結(jié)果呢,通常在這個(gè)mapper.xml對(duì)應(yīng)的接口中使用List<User>做為返回值去接收,最后存儲(chǔ)的樣子就是下面的圖

這是一個(gè)很簡(jiǎn)單的單表查詢操作,其實(shí)這種簡(jiǎn)單的單表查詢操作不需要引入U(xiǎn)ser類,直接使用resultType="hashmap",接口中使用List<Object>做為返回值去接(hashmap也是對(duì)象的一種所以可以直接使用Obeject),讓查詢結(jié)果自動(dòng)封裝成Map對(duì)象存入list中也可以返回

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

當(dāng)使用hashmap作為返回值類型時(shí),Mybatis會(huì)自動(dòng)將字段名作為key值,將對(duì)應(yīng)的字段值作為value封裝到map中,一條記錄有多個(gè)字段,產(chǎn)生多個(gè)key-value鍵值對(duì)存到一個(gè)map對(duì)象中,多條記錄就會(huì)生成多個(gè)map對(duì)象,多個(gè)map對(duì)象存到list中返回

注意:如果字段對(duì)應(yīng)的值為空,那么在封裝map的時(shí)候,這個(gè)字段會(huì)直接被忽略調(diào)。

補(bǔ)充知識(shí):resultType="java.util.HashMap" sql返回的null值,不在map里面

問(wèn):

mapper配置如下

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

name, nickname 有的是null

這樣導(dǎo)致,查詢出來(lái)的map,本來(lái)map.size=4的

但是,如果查詢出來(lái)的name為null,那么返回的hashmap里面就沒(méi)有name了

同樣,nickname也是一樣,請(qǐng)問(wèn),如何解決這個(gè)問(wèn)題

我不想在sql里面用nvl函數(shù)去做

答:

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

把這個(gè)加到你的mybatis-config.xml里。

以上這篇淺談Mybatis中resultType為hashmap的情況就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 在CentOS系統(tǒng)上安裝Java?JDK?8簡(jiǎn)單步驟

    在CentOS系統(tǒng)上安裝Java?JDK?8簡(jiǎn)單步驟

    最近購(gòu)買一臺(tái)新的云服務(wù)器,用于開(kāi)發(fā)學(xué)習(xí)使用,因此需要安裝很多的組件,下面這篇文章主要給大家介紹了關(guān)于在CentOS系統(tǒng)上安裝Java?JDK8的簡(jiǎn)單步驟,需要的朋友可以參考下
    2023-12-12
  • spring-boot 多線程并發(fā)定時(shí)任務(wù)的解決方案

    spring-boot 多線程并發(fā)定時(shí)任務(wù)的解決方案

    這篇文章主要介紹了spring-boot 多線程并發(fā)定時(shí)任務(wù)的解決方案,需要的朋友可以參考下
    2019-08-08
  • SpringBoot2.x 整合 thumbnailator 圖片處理的示例代碼

    SpringBoot2.x 整合 thumbnailator 圖片處理的示例代碼

    這篇文章主要介紹了SpringBoot2.x 之整合 thumbnailator 圖片處理,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • java web中 HttpClient模擬瀏覽器登錄后發(fā)起請(qǐng)求

    java web中 HttpClient模擬瀏覽器登錄后發(fā)起請(qǐng)求

    這篇文章主要介紹了java web中 HttpClient模擬瀏覽器登錄后發(fā)起請(qǐng)求的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • Java基礎(chǔ)之方法重寫詳解

    Java基礎(chǔ)之方法重寫詳解

    這篇文章主要介紹了Java基礎(chǔ)之方法重寫詳解,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-05-05
  • MyBatisPlus 主鍵策略的實(shí)現(xiàn)(4種)

    MyBatisPlus 主鍵策略的實(shí)現(xiàn)(4種)

    MyBatis Plus 集成了多種主鍵策略,幫助用戶快速生成主鍵,本文主要介紹了MyBatisPlus主鍵策略的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • Java中的定時(shí)任務(wù)調(diào)度Quartz舉例詳解

    Java中的定時(shí)任務(wù)調(diào)度Quartz舉例詳解

    這篇文章主要介紹了Java中的定時(shí)任務(wù)調(diào)度Quartz的相關(guān)資料,Quartz是Java平臺(tái)上的一個(gè)強(qiáng)大且靈活的任務(wù)調(diào)度庫(kù),廣泛應(yīng)用于企業(yè)級(jí)應(yīng)用中,本文介紹了Quartz的基本概念、核心組件、使用步驟和示例,幫助你更好地利用Quartz進(jìn)行定時(shí)任務(wù)調(diào)度,需要的朋友可以參考下
    2024-12-12
  • 解決maven打包排除類不生效maven-compiler-plugin問(wèn)題

    解決maven打包排除類不生效maven-compiler-plugin問(wèn)題

    總結(jié):在Spring Boot項(xiàng)目B中作為項(xiàng)目A的依賴時(shí),排除啟動(dòng)類不生效的原因是被其他類引用或父POM引入,解決方法是跳過(guò)test編譯或注釋掉@SpringBootTest(classes={BApplication.class})
    2024-11-11
  • Java中FileOutputStream類的使用

    Java中FileOutputStream類的使用

    java.io.FileOutputStream類是文件輸出流,用于將數(shù)據(jù)寫出到文件,下面就來(lái)介紹一下Java中FileOutputStream類的使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • Spring MVC 中 AJAX請(qǐng)求并返回JSON的示例

    Spring MVC 中 AJAX請(qǐng)求并返回JSON的示例

    本篇文章主要介紹了Spring MVC 中 AJAX請(qǐng)求并返回JSON,具有一定的參考價(jià)值,有興趣的可以了解一下。
    2017-01-01

最新評(píng)論

太保市| 桂平市| 颍上县| 项城市| 宜都市| 铅山县| 常山县| 邵阳市| 德化县| 于田县| 会同县| 宁安市| 正阳县| 栾城县| 土默特左旗| 阿拉尔市| 互助| 桂阳县| 尼木县| 霍州市| 固安县| 无极县| 哈密市| 琼结县| 昌都县| 张家界市| 贞丰县| 兴山县| 耒阳市| 进贤县| 海门市| 延吉市| 天台县| 平罗县| 泸定县| 平顺县| 敦煌市| 长兴县| 怀远县| 丁青县| 双辽市|