使用springboot集成Mysql数据库,并使用java代码循环向msql数据库插入100万条数据,并测试插入时间
idea代码开发工具
mysq5.7.38
Navicat可视化工具

MySpringBootApplication.java
package com.xiaoa;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MySpringBootApplication {
public static void main(String[] args) {
SpringApplication.run(MySpringBootApplication.class);
}
}
MySchedulRunner.java,此类使用 JdbcTemplate 执行拼接的sql语句。
package com.xiaoa.run;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
@Component
public class MySchedulRunner implements CommandLineRunner {
private static final Logger LOGGER = LoggerFactory.getLogger(MySchedulRunner.class);
@Autowired
JdbcTemplate jdbcTemplate;
@Override
public void run(String... args) {
/*
*向数据库t_user表循环插入数据
*/
String sql = "";
long t1 = System.currentTimeMillis();
int batchNum = 1000000;
for (int i = 1; i <= batchNum; i++) {
sql = "INSERT INTO t_user VALUES (" + i + ",'张三', 20, '男', '2019-01-01 00:00:01')";
jdbcTemplate.execute(sql);
}
long t2 = System.currentTimeMillis();
LOGGER.info("插入{}条数据,耗时{}秒", batchNum, (t2 - t1) / 1000);
}

数据成功插入到myql数据库中!

经过测试此代码成功将100万条数据插入到了mysql数据库,耗时2116秒,约1000000/2116=472条/秒,速度比手工插入还是快很多的!
使用Navicat查看表结构

CREATE TABLE `t_user` (
`id` int(11) NOT NULL,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,
`age` int(11) NULL DEFAULT NULL,
`sex` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,
`createtime` datetime(0) NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP(0),
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
4.0.0
org.springframework.boot
spring-boot-starter-parent
2.0.4.RELEASE
com.xiaoa
springboot-mysql
1.0-SNAPSHOT
xiaoa-mysql
springboot集成mysql
8
8
org.springframework.boot
spring-boot-starter-web
mysql
mysql-connector-java
5.1.40
org.springframework.boot
spring-boot-starter-jdbc
org.springframework.boot
spring-boot-maven-plugin
repackage
spring:
#DB Configuration:
datasource:
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://192.168.88.128:3306/canel?useUnicode=true&characterEncoding=utf8
username: root
password: 123456
server:
port: 8085
链接: 完整代码