mybatis if标签判断list
时间: 2023-11-09 20:10:59 浏览: 112
mybatis 映射文件中if标签判断字符串相等的两种方式
如果你想在 MyBatis 的 `if` 标签中判断一个 List 是否为空,可以使用 MyBatis 内置的 OGNL 表达式语言。具体的写法如下:
```xml
<select id="selectUsers" resultType="User">
SELECT * FROM user
<where>
<if test="userIds != null and userIds.size() > 0">
AND user_id IN
<foreach collection="userIds" item="userId" open="(" close=")" separator=",">
#{userId}
</foreach>
</if>
</where>
</select>
```
在上面的示例中,我们使用了 `test` 属性来判断 `userIds` 是否为非空且不为空列表。然后,我们使用 `foreach` 标签来遍历 `userIds` 列表,并将其中的元素作为参数传递给 SQL 语句中的 `IN` 子句。
注意,如果你要在 `if` 标签中判断一个 Java 对象是否为空,可以使用 `!= null` 的方式来判断,但是如果要判断一个列表是否为空,需要加上 `.size() > 0` 的条件判断。
阅读全文