思路
- 将对象封装成list传入;
- 接收list对象,传入XxbeanMapper.java的insert方法;
- 在mapper.xml中foreach遍历拼接sql;
XxbeanMapper.xml
<insert id="insertBatch">
insert into db_ag.t_xsfb
(c_bh,c_wtxs_bh,c_clfs,c_cbbm,c_jsdw,c_pzjjz,c_xjdw,c_xjbm,c_qtdw,c_sfdb,c_dblx,c_sfbc,d_fbrq,c_fbr,c_zt,
c_fljy,c_czr,dt_cjsj,dt_zhgxsj)
values
<foreach collection ="list" item="item" index= "index" separator =",">
(#{item.cBh}::VARCHAR,#{item.cWtxsBh}::VARCHAR,#{item.cClfs}::VARCHAR, #{item.cCbbm}::VARCHAR,#{item.cJsdw}::VARCHAR,
#{item.cPzjjz}::VARCHAR,#{item.cXjdw}::VARCHAR,#{item.cXjbm}::VARCHAR, #{item.cQtdw}::VARCHAR,#{item.cSfdb}::VARCHAR,
#{item.cDblx}::VARCHAR, #{item.cSfbc}::VARCHAR,#{item.dFbrq}::DATE,#{item.cFbr}::VARCHAR,#{item.cZt}::VARCHAR,
#{item.cFljy}::VARCHAR,#{item.cCzr}::VARCHAR,#{item.dtCjsj}::TIMESTAMP,#{item.dtZhgxsj}::TIMESTAMP
)
</foreach>
</insert>
foreach中的item属性即代表list中的对象,属性值可随便取。
具体的取对象中那个字段,只需通过“属性值.参数名”的方式即可获取,例如:item.cBh。