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

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

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

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

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

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

返回的對錯將以1或0表示;

但是當(dāng)返回值為null,或者多個值的時候 會怎么樣呢,0 1 還是報錯?

測試表示這種情況下會報錯:

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

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

補充知識:mybatis mapper方法返回值是null還是空對象,或者空列表?

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

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

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

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

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

相關(guān)文章

  • Java 線程池ExecutorService詳解及實例代碼

    Java 線程池ExecutorService詳解及實例代碼

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

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

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

    Maven 安裝目錄的詳細介紹

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

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

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

    springboot與mybatis整合實例詳解

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

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

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

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

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

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

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

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

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

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

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

最新評論

海丰县| 怀安县| 延边| 耒阳市| 鱼台县| 黔西县| 道孚县| 内江市| 阿拉善盟| 盐池县| 同仁县| 茶陵县| 永宁县| 来宾市| 扎兰屯市| 武汉市| 嘉义市| 阿拉善左旗| 桃源县| 广平县| 南安市| 洱源县| 五大连池市| 深圳市| 金塔县| 瓦房店市| 蕲春县| 聂拉木县| 鄂托克旗| 西乌珠穆沁旗| 乐昌市| 东安县| 萍乡市| 南澳县| 武穴市| 明光市| 珠海市| 望奎县| 邹城市| 延寿县| 敦化市|