mybaitsinsert into 批量插入数据
时间: 2023-10-08 07:05:44 浏览: 71
MyBatis提供了两种方式实现批量插入数据:XML文件和注解。
在XML文件中,可以使用批量插入执行的SQL语句,如下所示:
```
insert into table (id, name, sex, address) values (?,?,?,?),(?,?,?,?),(?,?,?,?),(?,?,?,?)
```
批量插入数据的好处是可以避免程序和数据库建立多次连接,从而减少了服务器的负荷。
在MyBatis层面,可以通过mapping.xml配置文件来实现批量插入数据。具体有两种方式:
1. 单条插入,循环调用1000次:
```xml
<!-- 在外部for循环调用1000次 -->
<insert id="insert" parameterType="com.xxp.mybatis.Person">
insert into person (id, name, sex, address) values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{sex,jdbcType=VARCHAR}, #{address,jdbcType=VARCHAR})
</insert>
```
2. 一次性插入一个大小为1000的列表:
```xml
<insert id="insertBatch">
insert into person (
<include refid="Base_Column_List" />
) values
<foreach collection="list" item="item" index="index" separator=",">
(null, #{item.name}, #{item.sex}, #{item.address})
</foreach>
</insert>
```
以上就是使用MyBatis进行批量插入数据的方法。
阅读全文