mybatis foreach 入参为set类型
时间: 2024-03-27 22:33:19 浏览: 89
MyBatis是一个Java持久层框架,可以用于简化数据库操作。在MyBatis中,foreach标签用于循环遍历集合类型的参数,并将集合中的元素作为参数传递给SQL语句。
当入参为Set类型时,可以使用foreach标签来遍历Set集合中的元素。以下是使用foreach标签处理Set类型入参的示例:
1. 在Mapper XML文件中,使用foreach标签包裹SQL语句,并指定集合参数和循环变量名:
```xml
<update id="updateUsers" parameterType="java.util.Set">
UPDATE users
<set>
<foreach collection="set" item="item" separator=",">
name = #{item}
</foreach>
</set>
</update>
```
2. 在Java代码中,将Set类型的参数传递给Mapper接口的方法:
```java
Set<String> names = new HashSet<>();
names.add("Alice");
names.add("Bob");
names.add("Charlie");
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
userMapper.updateUsers(names);
```
在上述示例中,foreach标签中的collection属性指定了Set类型的参数名为"set",item属性指定了循环变量名为"item"。在SQL语句中,可以通过#{item}来引用集合中的元素。
阅读全文