mybatis的批量刪除操作
阿新 • • 發佈:2018-09-03
記錄 刪除 HERE map cti and param delete clu
需求描述:將符合某條件的幾條記錄刪除
解決思路:對於多個id,可以使用sql關鍵詞 in ,只要滿足數據庫的id在你的id集合或者list中,就刪除,從而實現批量刪除。循環delete方法是在是low到爆,就不再提了。
代碼:
List<OhSysPriRoleOrg> roList = (List<OhSysPriRoleOrg>)dao.findForList("OhSysPriRoleOrgMapper.getResByRoleIdAndOrgId",paramMap);
//刪除
dao.batchDelete("XXXRoleOrgMapper.deleteById",roList);
mapper中的sql:
<delete id="deleteById" parameterType="String">
delete from <include refid="tableName"></include>
where
role_org_id in
<foreach item="item" index="index" collection="list" open="(" separator="," close=")">
#{item.roleOrgId}
</foreach>
</delete>
總結:註意用好foreach就行,其中的collection是什麽類型的一定要對應好。
mybatis的批量刪除操作