mapper 执行多条语句
时间: 2024-02-11 07:34:32 浏览: 61
Mybatis查询语句结果集的总结大全
Mapper 可以执行多条语句,但需要注意以下几点:
1. 在 Mapper 中执行多条语句时,需要将语句分号分隔开。
2. 如果执行的是查询语句,需要使用 resultMap 将结果映射到对应的实体类中。
3. 如果执行的是更新语句,需要在语句前加上注解 @Update、@Insert 或 @Delete,以便 MyBatis 正确识别语句类型。
4. 如果执行的是多个更新语句,可以将它们放在 <batch> 标签中执行,以提高执行效率。
以下是一个示例:
```xml
<mapper namespace="com.example.UserMapper">
<select id="getUserListAndCount" resultType="java.util.Map">
SELECT * FROM user;
SELECT COUNT(*) FROM user;
</select>
<update id="updateUser">
UPDATE user SET name = #{name} WHERE id = #{id};
UPDATE user SET age = #{age} WHERE id = #{id};
</update>
<insert id="batchInsertUsers" parameterType="java.util.List">
<foreach collection="list" item="user" index="index">
INSERT INTO user(name, age) VALUES(#{user.name}, #{user.age});
</foreach>
</insert>
</mapper>
```
阅读全文