一、SQL层面实现数据插入
先复习一下单条/批量插入数据的sql语句怎么写:
单条插入数据的写法:
insert into table ([列名],[列名]) values ([列值],[列值]));
或:
insert into table values ([列值],[列值]));
批量插入
一种可以在代码中循环着执行上面的语句,但是这种效率太差。
另一种,可以用mysql支持的批量插入语句,这种方式相比起来,更高效。
insert into table ([列名],[列名])
VALUES
([列值],[列值])),
([列值],[列值])),
([列值],[列值]));
批量的好处:可以避免程序和数据库建立多次连接,从而增加服务器负荷。
二、MyBatis层面如何完成批量插入
MyBatis批量插入数据到数据库有两种方式:xml文件,注解。
使用批量插入执行的SQL语句应该等价于:
insert into table (id, name,sex,address)
values
(?,?,?,?),(?,?,?,?),(?,?,?,?),(?,?,?,?)
方法一:xml配置。
最基础的是用mapping.xml配置的方式,包括以下两种具体方式:
mapping.xml中insert语句可以写成单条插入,在调用方循环1000次
insert into person (id, name,sex,address)
values