// MyBatis 批量插入示例代码
import org.apache.ibatis.session.SqlSession;
import java.util.List;
public class BatchInsertExample {
public void batchInsert(List<User> users) {
// 获取SqlSession对象
try (SqlSession sqlSession = MyBatisUtil.getSqlSessionFactory().openSession(ExecutorType.BATCH, false)) {
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
// 遍历用户列表,逐个插入
for (User user : users) {
userMapper.insertUser(user);
}
// 提交事务
sqlSession.commit();
}
}
}
// 对应的Mapper接口
@Mapper
public interface UserMapper {
void insertUser(User user);
}
// MyBatis XML配置文件中的SQL语句
<insert id="insertUser" useGeneratedKeys="true" keyProperty="id">
INSERT INTO users (name, age)
VALUES (#{name}, #{age})
</insert>
ExecutorType.BATCH
模式来开启批量操作,并且设置自动提交为false
。insertUser
方法,用于插入单个用户记录。insertUser
的SQL语句。insertUser
方法,最后统一提交事务。上一篇:mysql8 忘记密码
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站