mybatis 标签怎么使用sql片段
时间: 2024-09-30 20:14:01 浏览: 32
MyBatis动态SQL标签用法实例详解
MyBatis中的SQL片段通常用于封装复杂的动态查询或者常复用的部分SQL语句。通过`<include>`或`<foreach>`标签,你可以将这些预定义的SQL代码块(称为"Sql Fragment"或"动态SQL")嵌入到你的Mapper XML文件中。
1. `<include>`标签: 这个标签用于包含其他XML文件中的SQL部分。例如:
```xml
<select id="selectUsers" parameterType="map">
<include refid="commonSelectPart" />
WHERE id = #{userId}
</select>
```
这里,`commonSelectPart`是一个外部的XML片段,包含了通用的查询头部。
2. `<foreach>`标签: 如果你需要对集合中的每个元素执行相同的SQL,可以使用这个标签循环处理。例如:
```xml
<select id="selectAllUsers" resultType="User">
<foreach item="item" index="index" collection="users" open="(" separator="," close=")">
SELECT * FROM users WHERE id = #{item.id}
</foreach>
</select>
```
在这里,`users`是传递给Mapper的参数,`item.id`会遍历集合中的每个元素对应值。
阅读全文