`
WChao226
  • 浏览: 28071 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

mybatis批量插入,用oracle序列做为主键的解决方案

阅读更多
在使用mybatis进行批量插入时,使用oracle的自动增长序列作为主键
mapper.xml内容

<!-- 批量插入 -->
<insert id="insertSalconfigAfter" parameterType="java.util.List">
	<![CDATA[
	   INSERT INTO TB_DEPARTMENT (id,s1,s2,s3,s4,s5,s6)
	]]>
	select TB_MY_SEQUENCE.NEXTVAL,m.* from (
<foreach collection="list" item="item" index="index" separator="union all">
	     select
		#{item.s1,jdbcType=VARCHAR},
		#{item.s2,jdbcType=VARCHAR},
		#{item.s3,jdbcType=VARCHAR},
		#{item.s4,jdbcType=VARCHAR},
		#{item.s5,jdbcType=VARCHAR},
		#{item.s6,jdbcType=VARCHAR}
              from dual
</foreach>
	) m
</insert>

java调用代码:
List<TbDepartment> list= new ArrayList<TbDepartment>();
sqlSessionTemplate.insert("insertSalconfigAfter", list);
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics