Mybatis批量插入百万级数据量 注意事项及实现:
application.yml中 jdbc的url配置要将rewriteBatchedStatements=true 配置,如果不配置,mybatis-plus的saveBatch方法不生效.
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/dataBase?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=utf-8
username: xxx
password: xxx
代码实现:
package com.yhh.studysys.test.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import lombok.*;
/**
* <p>
* 测试实体类
* </p>
*
* @author yhh
* @since 2021-03-16
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ExportExcel implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "id", type = IdType.AUTO)
private Long id;
private String field1;
private String field2;
private String field3;
private String field4;
private String field5;
private String field6;
private String field7;
private String field8;
private String field9;
private String field10;
private String field11;
private String field12;
pr