mapper 执行多条语句
时间: 2024-02-11 12:40:56 浏览: 205
尚硅谷-通用Mapper视频教程
Mapper 是 MyBatis 框架中的一部分,用于定义 SQL 语句与 Java 方法之间的映射关系。在 Mapper 中可以定义多条 SQL 语句,并通过不同的方法名来调用不同的 SQL 语句。
在 MyBatis 中,如果需要执行多条 SQL 语句,可以使用 `<script>` 标签来将多条语句组合在一起。例如,以下是一个包含两条 SQL 语句的 Mapper:
```
<mapper namespace="com.example.UserMapper">
<select id="getUserById" parameterType="int" resultType="com.example.User">
SELECT * FROM users WHERE id = #{id}
</select>
<update id="updateUser" parameterType="com.example.User">
<script>
UPDATE users SET
username = #{username},
email = #{email}
WHERE id = #{id};
UPDATE user_details SET
first_name = #{firstName},
last_name = #{lastName},
age = #{age}
WHERE user_id = #{id};
</script>
</update>
</mapper>
```
在上面的例子中,`<update>` 标签中定义了两条 SQL 语句,并使用 `<script>` 标签将它们组合在一起。在调用 `updateUser` 方法时,MyBatis 会一次性执行这两条 SQL 语句。
需要注意的是,在 `<script>` 标签中,每个 SQL 语句都必须以分号结尾,并且不能使用参数占位符(`#{}` 或 `${}`),而应该直接使用变量名。
阅读全文