MyBatis标签获取数组或者集合长度的方法

1、判断列表长度:

bash 复制代码
<if test="list != null and list.size() > 0">
  ...
</if>
可结合in条件使用:
 SELECT * FROM users
  <where>
    <if test="idList != null and idList.size() > 0">
      id IN
      <foreach item="item" index="index" collection="idList" open="(" separator="," close=")">
        #{item}
      </foreach>
    </if>
  </where>

2、遍历数组:

bash 复制代码
<if test="array != null and array.length > 0">
  ...
</if>

3、获取数组或列表的元素(${}方式拼接字符串,注意安全):

bash 复制代码
${list[0]}
${array[0]}

4、总结:

在使用这些表达式时,请确保你的参数类型与表达式中使用的类型相匹配。例如,如果你传递的是 java.util.List,则应使用 list.size();如果你传递的是原生数组(如 String[]),则应使用 array.length。

相关推荐
没有bug.的程序员11 小时前
负载均衡的真正含义:从算法到架构的深度解析
java·jvm·算法·微服务·架构·负载均衡
yc_xym11 小时前
[项目实践]言聚论坛(后端)
java·项目开发
多仔ヾ11 小时前
Solon + EasyQuery + ElementPlus 实现后台管理系统之 08-权限认证优化
java
LambdaCat11 小时前
如何用 Prompt 让 AI 主动发现设计问题
java·ai·ai编程
changlianzhifu111 小时前
分账系统:从“资金管道“到“增长引擎“,重塑商业价值分配新范式
java·服务器·前端
吃喝不愁霸王餐APP开发者11 小时前
Java应用对接美团开放平台API时的HTTPS双向认证与证书管理实践
java·开发语言·https
宠..11 小时前
QButtonGroup
java·服务器·开发语言·前端·数据库·c++·qt
码luffyliu11 小时前
Go 语言并发编程:为何它能甩开 Java 等传统后端语言?
java·后端·golang·go
星火开发设计11 小时前
快速排序详解:原理、C++实现与优化技巧
java·c++·算法·排序算法·快速排序·知识
写代码的【黑咖啡】11 小时前
Python中的文件操作详解
java·前端·python