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

解決mybatis返回boolean值時(shí)數(shù)據(jù)庫返回null的問題

 更新時(shí)間:2020年11月25日 09:25:50   作者:lw1242189467  
這篇文章主要介紹了解決mybatis返回boolean值時(shí)數(shù)據(jù)庫返回null的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

常規(guī)情況,我們使用數(shù)據(jù)庫判斷 true or false。所寫的語句是select count(id) from 表名;

這種常用情況下,只有當(dāng)查詢語句查到數(shù)據(jù) 且 只有一條時(shí)才會(huì)返回 true;

還有一種情況,就是數(shù)據(jù)庫中返回判斷句,比如

返回的對(duì)錯(cuò)將以1或0表示;

但是當(dāng)返回值為null,或者多個(gè)值的時(shí)候 會(huì)怎么樣呢,0 1 還是報(bào)錯(cuò)?

測(cè)試表示這種情況下會(huì)報(bào)錯(cuò):

希望大家使用 boolean 返回時(shí) 也能格外小心。

這里簡(jiǎn)單做了更改方法,可能不是最優(yōu)化的,有更好的意見還請(qǐng)不吝賜教。

補(bǔ)充知識(shí):mybatis mapper方法返回值是null還是空對(duì)象,或者空列表?

返回單個(gè)實(shí)體對(duì)象,從數(shù)據(jù)庫中沒有查到數(shù)據(jù)時(shí)返回為null;

返回Map類型數(shù)據(jù),從數(shù)據(jù)庫中沒有查到數(shù)據(jù)時(shí)返回為一個(gè)空map(size==0),內(nèi)部用反射創(chuàng)建的HashMap對(duì)象,有數(shù)據(jù)時(shí)放入這個(gè)map,沒數(shù)據(jù)就直接返回這個(gè)沒有任何元素的map,而不是null;

返回List類型數(shù)據(jù),從數(shù)據(jù)庫中沒有查到數(shù)據(jù)時(shí)返回為一個(gè)空列表(size==0),內(nèi)部返回的是自己new的List,有元素則添加進(jìn)去,沒元素就返回這個(gè)list,不會(huì)為null。

myabtis源代碼在MapperMethod類下的這段代碼,分別追查下去就行了。。我跟蹤之后得到的結(jié)果就是上面這些,當(dāng)然,只是跟蹤了一部分的實(shí)現(xiàn)類,可能其他實(shí)現(xiàn)類是不這樣呢?如果有誤請(qǐng)?jiān)u論。。等先研究一下spring源碼之后再仔細(xì)看看mybatis源碼。

以上這篇解決mybatis返回boolean值時(shí)數(shù)據(jù)庫返回null的問題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java 線程池ExecutorService詳解及實(shí)例代碼

    Java 線程池ExecutorService詳解及實(shí)例代碼

    這篇文章主要介紹了Java 線程池ExecutorService詳解及實(shí)例代碼的相關(guān)資料,線程池減少在創(chuàng)建和銷毀線程上所花的時(shí)間以及系統(tǒng)資源的開銷.如果不使用線程池,有可能造成系統(tǒng)創(chuàng)建大量線程而導(dǎo)致消耗系統(tǒng)內(nèi)存以及”過度切換“
    2016-11-11
  • 分隔List集合,按指定大小,將集合分成多個(gè)的方法

    分隔List集合,按指定大小,將集合分成多個(gè)的方法

    下面小編就為大家?guī)硪黄指鬖ist集合,按指定大小,將集合分成多個(gè)的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-03-03
  • Maven 安裝目錄的詳細(xì)介紹

    Maven 安裝目錄的詳細(xì)介紹

    這篇文章主要介紹了Maven 安裝目錄的詳細(xì)介紹的相關(guān)資料,這里對(duì)Maven進(jìn)行了解讀,希望通過本文可以幫助到大家,需要的朋友可以參考下
    2017-08-08
  • Springcloud中的Nacos?Config服務(wù)配置流程分析

    Springcloud中的Nacos?Config服務(wù)配置流程分析

    這篇文章主要介紹了Springcloud中的Nacos?Config服務(wù)配置,本文以用戶微服務(wù)為例,進(jìn)行統(tǒng)一的配置,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • springboot與mybatis整合實(shí)例詳解

    springboot與mybatis整合實(shí)例詳解

    這篇文章主要為大家詳細(xì)介紹了springboot與mybatis整合實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 一文帶你掌握J(rèn)ava中的HashSet

    一文帶你掌握J(rèn)ava中的HashSet

    HashSet?基于?HashMap?來實(shí)現(xiàn)的,是一個(gè)不允許有重復(fù)元素的集合,HashSet?不是線程安全的,?如果多個(gè)線程嘗試同時(shí)修改?HashSet,則最終結(jié)果是不確定的,本文將帶你詳細(xì)了解Java中的HashSet,,需要的朋友可以參考下
    2023-05-05
  • 使用Filter過濾器中訪問getSession()要轉(zhuǎn)化

    使用Filter過濾器中訪問getSession()要轉(zhuǎn)化

    這篇文章主要介紹了使用Filter過濾器中訪問getSession()要轉(zhuǎn)化,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • 探討:如何在NDK中呼叫Java的class

    探討:如何在NDK中呼叫Java的class

    本篇文章是對(duì)如何在NDK中呼叫Java的class進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • Java泛型中的通配符舉例詳解

    Java泛型中的通配符舉例詳解

    Java泛型中的通配符是指使用"?"來表示未知類型,可以用于定義泛型類、泛型方法和泛型接口,下面這篇文章主要給大家介紹了關(guān)于Java泛型中通配符的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • Java實(shí)現(xiàn)的各種排序算法(插入排序、選擇排序算法、冒泡排序算法)

    Java實(shí)現(xiàn)的各種排序算法(插入排序、選擇排序算法、冒泡排序算法)

    本文是小編給大家?guī)淼膉ava各種排序算法知識(shí),包括插入排序、選擇排序算法、冒泡排序算法,代碼簡(jiǎn)單易懂,需要的朋友可以參考下
    2016-08-08

最新評(píng)論

阜新| 佳木斯市| 芦溪县| 霍林郭勒市| 寻甸| 香港 | 潜山县| 建水县| 怀宁县| 彩票| 平舆县| 萍乡市| 民丰县| 衢州市| 包头市| 十堰市| 房山区| 金秀| 博湖县| 桓台县| 伊金霍洛旗| 交口县| 东台市| 元氏县| 峨山| 祁连县| 英德市| 耒阳市| 嘉兴市| 城固县| 常德市| 宜城市| 江津市| 澄迈县| 普陀区| 余干县| 运城市| 武隆县| 尤溪县| 义马市| 兖州市|