1 如果传入参数只有一个且类型是List, 则在使用时,collection属性要必须指定为 list
例:
mapper.java
void insertYxlsList(List<TYzglHjglLshjYxls> yxlsList);
mapper.xml
<insert >
insert into {db.t_yzgl_hjgl_lshj_yxls} (c_bh, c_lshj_bh, c_lsbh, c_cjr_bh, d_cjsj, c_xgr_bh, d_zhxgsj)
values
<foreach collection ="list" item="yxls" index= "index" separator =",">
(#{yxls.CBh,jdbcType=VARCHAR}, #{yxls.CLshjBh,jdbcType=VARCHAR}, #{yxls.CLsbh,jdbcType=VARCHAR},
#{yxls.CCjrBh,jdbcType=VARCHAR}, #{yxls.DCjsj,jdbcType=TIMESTAMP}, #{yxls.CXgrBh,jdbcType=VARCHAR},
#{yxls.DZhxgsj,jdbcType=TIMESTAMP})
</foreach >
</insert>
2,如果传入参数使用了@Param(value="value"),collection的属性必须为"value"值
例:
mapper.java
void insertYxlsList(@Param("yxlsList")List<TYzglHjglLshjYxls> yxlsList);
mapper.xml
<insert >
insert into {db.t_yzgl_hjgl_lshj_yxls} (c_bh, c_lshj_bh, c_lsbh, c_cjr_bh, d_cjsj, c_xgr_bh, d_zhxgsj)
values
<foreach collection ="yxlsList" item="yxls" index= "index" separator =",">
(#{yxls.CBh,jdbcType=VARCHAR}, #{yxls.CLshjBh,jdbcType=VARCHAR}, #{yxls.CLsbh,jdbcType=VARCHAR},
#{yxls.CCjrBh,jdbcType=VARCHAR}, #{yxls.DCjsj,jdbcType=TIMESTAMP}, #{yxls.CXgrBh,jdbcType=VARCHAR},
#{yxls.DZhxgsj,jdbcType=TIMESTAMP})
</foreach >
</insert>