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。

相关推荐
零度@6 分钟前
Java-Redis 缓存「从入门到黑科技」2026 版
java·redis·缓存
zzhongcy7 分钟前
多级缓存对比(Caffeine + Redis),以及缓存不一致问题的解决
java
带刺的坐椅9 分钟前
灵动如画 —— 初识 Solon Graph Fluent API 编排
java·ai·agent·solon·flow·langgraph
cike_y10 分钟前
Spring整合Mybatis:dao层
java·开发语言·数据库·spring·mybatis
小股虫11 分钟前
缓存攻防战:在增长中台设计一套高效且安全的缓存体系
java·分布式·安全·缓存·微服务·架构
小蒜学长12 分钟前
足球联赛管理系统(代码+数据库+LW)
java·数据库·spring boot·后端
tkevinjd17 分钟前
IO流3(字符流)
java
不吃香菜56717 分钟前
SpringBoot 与 SpringCloud用法和区别
java
这是程序猿21 分钟前
基于java的SpringBoot框架医院药品管理系统
java·开发语言·spring boot·后端·spring·医院药品管理系统
tkevinjd25 分钟前
IO流4(小练习)
java·io流