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。

相关推荐
呱牛do it11 小时前
企业级门户网站设计与实现:基于SpringBoot + Vue3的全栈解决方案(Day 3)
java·vue
神の愛12 小时前
左连接查询数据 left join
java·服务器·前端
南境十里·墨染春水12 小时前
linux学习进展 线程同步——互斥锁
java·linux·学习
雨奔12 小时前
Kubernetes 联邦 Deployment 指南:跨集群统一管理 Pod
java·容器·kubernetes
杨凯凡12 小时前
【021】反射与注解:Spring 里背后的影子
java·后端·spring
lulu121654407812 小时前
Claude Code项目大了响应慢怎么办?Subagents、Agent Teams、Git Worktree、工作流编排四种方案深度解析
java·人工智能·python·ai编程
riNt PTIP12 小时前
SpringBoot创建动态定时任务的几种方式
java·spring boot·spring
老星*13 小时前
AI选股核心设计思路
java·ai·开源·软件开发
それども13 小时前
Comparator.comparing 和 拆箱问题
java·jvm
星晨羽14 小时前
西门子机床opc ua协议实现变量读写及NC文件上传下载
java·spring boot