mybatis判断list不为空/大小的问题

 更新时间:2022年01月21日 14:27:00   作者:sayyy  
这篇文章主要介绍了mybatis判断list不为空/大小的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

mybatis判断list不为空

    <if test="status != null and status.size()>0" >
      and s.orderstatus in 
      <foreach collection="status" item="listItem" open="(" close=")" separator="," >
        #{listItem}
      </foreach>
    </if>   

建议对特殊字符进行处理

    <if test="status != null and status.size() &gt; 0" >
      and s.orderstatus in 
      <foreach collection="status" item="listItem" open="(" close=")" separator="," >
        #{listItem}
      </foreach>
    </if>   

mybatis判断两个集合是否为空

在工作中遇到mybatis中判断两个集合是否为空,不为空的话遍历;都为空执行  1=0 or 1=0,则查询出来空集合

select login,name,email from users u where
<choose>
    <when test="sameEmailList != null and sameEmailList.size > 0 ">
        email in <foreach collection="sameEmailList" item="email" open="(" separator="," close=")">
        #{email, jdbcType=VARCHAR}
        </foreach>
    </when>
    <otherwise>
        1 = 0
    </otherwise>
</choose>
<choose>
    <when test="sameNameList != null and sameNameList.size > 0">
        or name in <foreach collection="sameNameList" item="name" open="(" separator="," close=")">
        #{name, jdbcType=VARCHAR}
    </foreach>
    </when>
    <otherwise>
        or 1 = 0
    </otherwise>
</choose>
ORDER by name, email ASC

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 在Java生产环境下进行性能监控与调优的详细过程

    在Java生产环境下进行性能监控与调优的详细过程

    在Java生产环境下进行性能监控与调优是一个复杂但重要的过程,它涉及到多个方面,包括代码分析、JVM监控、线程管理、垃圾收集优化、内存管理、数据库交互等,下面我将提供一个详细的概述和示例代码,需要的朋友可以参考下
    2025-02-02
  • 详解Java目录操作与文件操作教程

    详解Java目录操作与文件操作教程

    本章具体介绍了目录操作、文件操作的基本使用方法和常用函数,图解穿插代码实现,感兴趣的朋友来看看吧
    2022-03-03
  • java 压缩和解压缩Zip、Jar、Gzip文件实例代码

    java 压缩和解压缩Zip、Jar、Gzip文件实例代码

    本文主要介绍java压缩和解压缩Zip、Jar、Gzip文件的知识,这里整理了相关资料,并附示例代码有兴趣的小伙伴可以参考下
    2016-09-09
  • JUC中的wait与notify方法实现原理详解

    JUC中的wait与notify方法实现原理详解

    这篇文章主要介绍了JUC中的wait与notify方法实现原理,在进行wait()之前,就代表着需要争夺Synchorized,而Synchronized代码块通过javap生成的字节码中包含monitor enter和monitor exit两个指令
    2023-03-03
  • SpringBoot bean加载顺序怎样查看(源码解读)

    SpringBoot bean加载顺序怎样查看(源码解读)

    这篇文章主要介绍了SpringBoot bean加载顺序怎样查看(源码解读)问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • Java开发中可以防止界面假死的刷新代码

    Java开发中可以防止界面假死的刷新代码

    今天小编就为大家分享一篇关于Java开发中可以防止界面假死的刷新代码,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • 利用Java的Struts框架实现电子邮件发送功能

    利用Java的Struts框架实现电子邮件发送功能

    这篇文章主要介绍了利用Java的Struts框架实现电子邮件发送功能,Struts框架是Java的SSH三大web开发框架之一,需要的朋友可以参考下
    2015-12-12
  • Springboot整合Redis最简单例子分享

    Springboot整合Redis最简单例子分享

    这篇文章主要介绍了Springboot整合Redis最简单例子分享,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • Linux centos7环境下jdk安装教程

    Linux centos7环境下jdk安装教程

    这篇文章主要为大家详细介绍了Linux centos7环境下jdk的安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • Java骚操作之CountDownLatch代码详解

    Java骚操作之CountDownLatch代码详解

    这篇文章主要介绍了Java骚操作之CountDownLatch代码详解,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02

最新评论