mapper.xml foreach 插入 中如何使用if标签以及trim标签
时间: 2024-05-03 07:21:25 浏览: 154
在mapper.xml中使用foreach标签插入多条记录时,可以通过if标签过滤需要插入的记录,也可以通过trim标签去除不必要的空格和逗号。
使用if标签:
```xml
<insert id="insertList" parameterType="java.util.List">
insert into user (id, name, age)
values
<foreach collection="list" item="item" separator=",">
<if test="item.age >= 18">
(#{item.id}, #{item.name}, #{item.age})
</if>
</foreach>
</insert>
```
在上面的例子中,我们使用了if标签,只有当item的age大于等于18时才会插入该记录。
使用trim标签:
```xml
<insert id="insertList" parameterType="java.util.List">
insert into user (id, name, age)
values
<trim suffixOverrides=",">
<foreach collection="list" item="item" separator=",">
(#{item.id}, #{item.name}, #{item.age}),
</foreach>
</trim>
</insert>
```
在上面的例子中,我们使用了trim标签,去除了最后一个记录后面的逗号。suffixOverrides属性表示要去除的后缀,这里是逗号。
阅读全文