java教程

mybatis批量插入insert 批量操作

位置:首页 > java教程 > java技巧,2017-07-24
MyBatis中批量插入insert的方法:方法一:123456<insert id="insertBatch" parameterT

MyBatis中批量插入insert的方法:

方法一:
1
2
3
4
5
6
<insert id="insertBatch" parameterType="java.util.List">
  insert into t_user(id,name) values
  <foreach collection="list" item="user" index="index" separator=",">
  ( #{user.id}, #{user.name})
  </foreach>
  </insert>


方法二:
1
2
3
4
5
6
<insert id="batchInsert2" parameterType="ArrayList">
     insert into t_user(id,name)
    <foreach collection="list" item="user" index="index" separator="union all">
      select #{user.id,jdbcType=VARCHAR},#{user.name,jdbcType=VARCHAR} from dual
    </foreach>
</insert>


可以考虑用union all来实现批量插入。
例如:
insert into XX_TABLE(XX,XX,XX)select 'xx','xx','xx' union all select 'xx','xx','xx' union all select 'xx','xx','xx' ...
先拼装好语句再动态传入insert into XX_TABLE(XX,XX,XX)后面部分


TAGS:mybatis批量插入mybatis批量操作



猜你喜欢

NewHot手机版