mybatis如何对mysql数据库进行批量插入呢?
admin
2024-03-02 17:24:50

转自:

mybatis如何对mysql数据库进行批量插入呢?

下文笔者讲述MySQL数据库批量插入数据的方法分享,如下所示

MySQL批量插入的应用场景

在一些数据导入的操作时通常是多条数据一次性插入至数据库中,那么如何实现这类需求呢?下文笔者将一一道来,如下所示

例:
Excel导入数据至数据库

Controller层接收导入的Excel数据

    @PostMapping("/importUser")public AjaxResult importUser(MultipartFile file) throws Exception{GeneralListener generalListener = new GeneralListener<>();EasyExcel.read(file.getInputStream(),User.class,generalListener).sheet().doRead();List courseInfoList = generalListener.getList();userService.insertCourseByBatch(userList);return AjaxResult.success();}

mapper.xml的SQL语句 及service、domain层

mapper.java

@Mapper
public interface UserInfoMapper {void insertUserByBatch(@Param("list") List list);
}mapper.xml代码如下:insert into User_info (id,userno,userName)values(#{item.id,jdbcType=BIGINT},#{item.userno,jdbcType=VARCHAR},#{item.username,jdbcType=VARCHAR})
注意事项:数据类型后面需加上jdbcType否则会产生相应的错误信息

批量插入优点

   批量插入效率比单次插入要高很多能节省大约2/3的时间 批量插入的优点:1.减少Mysql日志2.减少mysql的解析次数3.减少网络IO传输4.减少事务的开启次数5.注意max_allowed_packet值,最大数据包的值 

相关内容

热门资讯

蛟河游船好去处,宴宾园活鱼馆美... 在蛟河游玩,游船是领略湖光山色的绝佳方式,而游玩之后,一顿美味的餐食更是不可或缺。宴宾园活鱼馆就是这...
必去的景点有免费WiFi、三级... 在旅游的世界里,寻找那些拥有独特魅力且设施完备的景点是每一位旅行者的心愿。今天,我们要为大家介绍一个...