荆轲刺秦王
1.批量新增
java mapper:
/**
* 批量插入
*/
void batchInsert(@Param("list") List<DeductionDetailEntity> insertList);
xml:
<insert id="batchInsert">
insert into meter_contract_deduction_detail
(id,epid,dept_id,deduction_id,deduction_name,exchange_rate,
deduction_amount,deduction_remark,is_delete,create_by,
create_at,update_by,update_at)
values
<foreach collection="list" item="item" index="index" separator=",">
(#{item.id},#{item.epid},#{item.deptId},
#{item.deductionId},#{item.deductionName},#{item.exchangeRate},
#{item.deductionAmount},#{item.deductionRemark},#{item.isDelete},#{item.createBy},
#{item.createAt},#{item.updateBy},#{item.updateAt})
</foreach>
</insert>
2.批量更新
2.1 批量更新一个字段 比如批量更新删除字段
java mapper :
/**
* 批量删除
*
* @param ids
* @return
*/
int batchDelete(@Param("list") List<String> ids);
xml :
<update id="batchDelete">
update meter_contract_deduction_detail SET is_delete = 1
where id in
<foreach collection = 'list' item = 'item' index='index' open = '(' separator= ',' close = ')' >
#{item}
</foreach>
</update>
2.2 批量更新多个字段
java mapper :
void batchUpdate(@Param("referenceIds") List<String> referenceIds, @Param("approvalStatus") Integer approvalStatus,
@Param("processId") String processId);
xml :
<!--批量更新-->
<update id="batchUpdate">
UPDATE meter_contract_prod_value
SET approval_status = #{approvalStatus}, process_id = #{processId}
WHERE id in
<foreach collection="referenceIds" item="item" index="index" open = '(' separator= ',' close = ')'>
#{item}
</foreach>
</update>