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