mybatis写批量新增
时间: 2023-07-01 16:29:17 浏览: 83
Mybatis框架(批量添加)
在 MyBatis 中进行批量新增可以使用 `insertList` 方法,其使用方式如下:
1. 创建一个 Mapper 接口,在其中定义一个批量新增的方法,如下所示:
```java
public interface UserMapper {
void batchInsert(List<User> userList);
}
```
2. 在对应的 Mapper.xml 文件中,编写对应的 SQL 语句,如下所示:
```xml
<insert id="batchInsert" useGeneratedKeys="true" keyProperty="id">
insert into user(name, age, gender)
values
<foreach collection="list" item="user" separator=",">
(#{user.name}, #{user.age}, #{user.gender})
</foreach>
</insert>
```
3. 在调用批量新增的时候,使用 SqlSession 的 `getMapper` 方法获取 Mapper 接口的实现类,调用对应的方法即可,如下所示:
```java
SqlSession sqlSession = sqlSessionFactory.openSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
List<User> userList = new ArrayList<>();
// 添加多个 User 对象到 userList 中
userMapper.batchInsert(userList);
sqlSession.commit();
sqlSession.close();
```
在上述代码中,我们通过 SqlSession 的 `getMapper` 方法获取了 UserMapper 接口的实现类,然后调用了其中的 `batchInsert` 方法,将 userList 中的多个 User 对象批量新增到数据库中。最后,记得提交事务并关闭 SqlSession。
阅读全文