数据结构为List<Map<String, String>>,list中每个map为一条数据记录,需用mybatis将其插入到Oracle。
mapper接口
public int addDataList(@Param("list")List<Map<String, String>> list);
mapper.xml
<insert id="addDataList" parameterType="java.util.List">
begin
<foreach collection="list" item="item" separator="">
insert into BD_SITE_BUFF
(ID,DBCT_CD,DBCT_NM,CAR_LN_NM,CAR_LN_CD,DIFF_MILE,CONV_SPEED,DIFF_TM,BGN_TM,END_TM,SITE_BUFF_STAT,
SITE_BUFF_TYP
,INST_CD
,INST_NM
,INST_TM
,RMK
)
values
(
#{item.ID, jdbcType=VARCHAR},
#{item.DBCT_CD, jdbcType=VARCHAR},
#{item.DBCT_NM, jdbcType=VARCHAR},
#{item.CAR_LN_NM, jdbcType=VARCHAR},
#{item.CAR_LN_CD, jdbcType=VARCHAR},
#{item.DIFF_MILE, jdbcType=VARCHAR},
#{item.CONV_SPEED, jdbcType=VARCHAR},
#{item.DIFF_TM, jdbcType=VARCHAR},
to_date(#{item.BGN_TM},'yyyy-MM-dd HH24:mi:ss'),
to_date(#{item.END_TM},'yyyy-MM-dd HH24:mi:ss'),
#{item.SITE_BUFF_STAT, jdbcType=DOUBLE},
#{item.SITE_BUFF_TYP, jdbcType=DOUBLE},
#{item.INST_CD, jdbcType=VARCHAR},
#{item.INST_NM, jdbcType=VARCHAR},
SYSDATE,
#{item.RMK, jdbcType=VARCHAR}
);
</foreach>
commit;
end;
</insert>
注意:映射关系需要一一对应。