mybatis同一时间插入两条数据
时间: 2023-12-23 17:27:13 浏览: 126
在Mybatis中,可以使用批量插入的方式一次性插入多条数据。以下是一个示例代码:
```java
List<User> userList = new ArrayList<>();
User user1 = new User();
user1.setName("John");
user1.setAge(25);
userList.add(user1);
User user2 = new User();
user2.setName("Jane");
user2.setAge(30);
userList.add(user2);
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
// 获取Mapper接口
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
// 执行批量插入操作
userMapper.batchInsert(userList);
// 提交事务
sqlSession.commit();
} finally {
sqlSession.close();
}
```
在上述代码中,首先创建了一个包含两个User对象的List,然后通过SqlSession获取UserMapper接口的实例。接下来,调用UserMapper接口的batchInsert方法,将List作为参数传入,实现批量插入操作。最后,提交事务并关闭SqlSession。
需要注意的是,具体的批量插入操作的实现方式可能因数据库类型而异。在MySQL中,可以使用`INSERT INTO ... VALUES (), (), ...`的语法来实现批量插入。而在Oracle中,可以使用`INSERT ALL INTO ... VALUES () INTO ... VALUES () ...`的语法来实现批量插入。
阅读全文