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

mybatis數組和集合的長度判斷及插入方式

 更新時間:2022年01月21日 11:44:23   作者:IT新手村  
這篇文章主要介紹了mybatis數組和集合的長度判斷及插入方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

mybatis數組和集合的長度判斷及插入

1、在使用foreach的是collection屬性

該屬性是必須指定的,但是在不同情況下,該屬性的值是不一樣的

主要有一下4種情況: 

  • 如果傳入的是單參數且參數類型是一個List的時候,collection屬性值為list .
  • 如果傳入的是單參數且參數類型是非list的Collection的時候,collection屬性值為collection .
  • 如果傳入的是單參數且參數類型是一個array數組的時候,collection的屬性值為array
  • 如果dao層指定了param的name,或者dao層傳的是map,collection里為param的name或map的key
DefaultSqlSession
private Object wrapCollection(final Object object) {
? ? if (object instanceof Collection) {
? ? ? StrictMap<Object> map = new StrictMap<Object>();
? ? ? map.put("collection", object);
? ? ? if (object instanceof List) {
? ? ? ? map.put("list", object);
? ? ? }
? ? ? return map;
? ? } else if (object != null && object.getClass().isArray()) {
? ? ? StrictMap<Object> map = new StrictMap<Object>();
? ? ? map.put("array", object);
? ? ? return map;
? ? }
? ? return object;
? }

2、判斷長度

集合:<if test="arr != null and arr.size() > 0">

數組:<if test="col != null and col .length > 0">

mybatis數組與集合判斷非空和長度

數組判斷

參數object為數組Object[]時。先判斷是否為null,不為null則判斷數組長度object.length是否大于0即可。

?? ?<if test="object!=null and object.length>0">
?? ??? ?<yourSql>
?? ?</if>

集合判斷

參數object為集合List<Object>時,先判斷是否為null,不為null則判斷集合長度object.size()是否大于0即可。

?? ?<if test="object!=null and object.size()>0">
?? ??? ?<yourSql>
?? ?</if>

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Java結合uniapp實現驗證碼功能的示例詳解

    Java結合uniapp實現驗證碼功能的示例詳解

    UniApp 是一個基于 Vue.js 的跨平臺應用開發(fā)框架,允許開發(fā)者使用統(tǒng)一的代碼庫來構建多平臺應用,這篇文章將給大家介紹Java結合uniapp實現驗證碼功能,文中通過詳細的代碼示例講解的非常詳細,需要的朋友可以參考下
    2024-07-07
  • Java8新特性之lambda的作用_動力節(jié)點Java學院整理

    Java8新特性之lambda的作用_動力節(jié)點Java學院整理

    我們期待了很久lambda為java帶來閉包的概念,但是如果我們不在集合中使用它的話,就損失了很大價值?,F有接口遷移成為lambda風格的問題已經通過default methods解決了,在這篇文章將深入解析Java集合里面的批量數據操作解開lambda最強作用的神秘面紗。
    2017-06-06
  • Java使用OpenOffice將office文件轉換為PDF的示例方法

    Java使用OpenOffice將office文件轉換為PDF的示例方法

    OpenOffice是一個開源的辦公套件,它包含了文檔處理、電子表格、演示文稿以及繪圖等多種功能,類似于Microsoft Office,本文將給大家介紹Java使用OpenOffice將office文件轉換為PDF的示例方法,需要的朋友可以參考下
    2024-09-09
  • springboot-mongodb的多數據源配置的方法步驟

    springboot-mongodb的多數據源配置的方法步驟

    這篇文章主要介紹了springboot-mongodb的多數據源配置的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • 淺談一下Java中的堆和棧

    淺談一下Java中的堆和棧

    這篇文章主要介紹了一下Java中的堆和棧,Java數據類型在執(zhí)行過程中存儲在兩種不同形式的內存中:棧和堆,它們通常由運行Java虛擬機(JVM)的底層平臺維護,需要的朋友可以參考下
    2023-04-04
  • mybatisplus?實現接口MetaObjectHandler自動填充字段值

    mybatisplus?實現接口MetaObjectHandler自動填充字段值

    MetaObjectHandler是MyBatis-Plus提供的一個接口,本文主要介紹了mybatisplus?實現接口MetaObjectHandler自動填充字段值,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-07-07
  • 使用Java實現生命游戲串行代碼示例

    使用Java實現生命游戲串行代碼示例

    生命游戲是一種二維細胞自動機,由英國數學家在1970年發(fā)明,在游戲的過程中,細胞會形成各種有規(guī)律的結構,展現出生命的復雜性和多樣性,本文通過java和JavaFX實現了一個簡單的生命游戲,可以直觀的觀察到細胞的迭代過程,需要的朋友可以參考下
    2024-10-10
  • Java Netty HTTP服務實現過程解析

    Java Netty HTTP服務實現過程解析

    這篇文章主要介紹了Java Netty HTTP服務實現過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • 詳解SpringBoot AOP 攔截器(Aspect注解方式)

    詳解SpringBoot AOP 攔截器(Aspect注解方式)

    這篇文章主要介紹了詳解SpringBoot AOP 攔截器 Aspect,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • Maven的使用和配置國內源的保姆級教程

    Maven的使用和配置國內源的保姆級教程

    Maven是?個項目管理工具,基于POM(Project Object Model,項目對象模型)的概念,Maven可以通過一小段描述信息來管理項目的構建,報告和文檔的項目管理工具軟件,很多新手還不夠了解maven,所以本文給大家講解Maven的使用和配置,需要的朋友可以參考下
    2025-04-04

最新評論

西盟| 竹北市| 土默特右旗| 德化县| 宜丰县| 汉沽区| 会理县| 宁化县| 西乌珠穆沁旗| 曲阜市| 利津县| 靖边县| 正阳县| 临城县| 台州市| 娄底市| 皋兰县| 额济纳旗| 仁寿县| 自治县| 科技| 仙居县| 衢州市| 南京市| 资中县| 金昌市| 巴青县| 万载县| 海门市| 景泰县| 革吉县| 通江县| 秦皇岛市| 台中市| 都昌县| 朝阳市| 岐山县| 青田县| 商洛市| 冀州市| 罗山县|