mybatisplus批量保存,返回保存成功的数量
时间: 2024-09-06 17:05:57 浏览: 71
MyBatis-Plus是MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。批量保存并返回成功保存的数量是一个常见的需求,MyBatis-Plus提供了便捷的方法来实现这一点。
要使用MyBatis-Plus进行批量保存操作,通常有以下步骤:
1. 在对应的Mapper接口中定义批量插入的方法,使用`@Insert`注解或者是XML配置的方式,指定具体的SQL语句。如果是使用注解的方式,可以使用`<foreach>`标签来构建批量插入的SQL语句。
2. 创建对应实体类的Mapper接口继承`BaseMapper`,这样就可以使用MyBatis-Plus提供的默认方法。
3. 调用Mapper接口中的批量插入方法,传入实体类集合。执行后,可以通过返回值来获取成功插入的记录数。
下面是一个使用注解方式的例子:
```java
@Mapper
public interface YourEntityMapper extends BaseMapper<YourEntity> {
// 可以在Mapper接口中添加自定义的方法,如批量插入
@Insert({"<script>",
"INSERT INTO your_table (id, name, age) VALUES",
"<foreach collection='list' item='item' separator=','>",
"(#{item.id}, #{item.name}, #{item.age})",
"</foreach>",
"</script>"
})
int insertBatch(@Param("list") List<YourEntity> list);
}
```
使用上述Mapper接口中的`insertBatch`方法,传入一个`YourEntity`的列表,即可实现批量插入。方法返回的整数即为成功插入的记录数。
需要注意的是,在实际的批量插入操作中,为了保证效率,通常需要关闭自动提交,手动控制事务的提交。
阅读全文