mybatis 传入map 进行批量更新操作示例

  定义dao接口


void modifyHostId(@Param("hostIds") Map hostIds) throws SQLException;
 
  
 
  
 mapper.xml 中定义 
  


<update id="modifyHostId" parameterType="java.util.Map">
    <foreach item="value" index="key" collection="hostIds.entrySet()" separator=";" >
        UPDATE hostTab SET migration=1
        <if test="value!=null">,testId= ${value}  if>
        WHERE hostId = #{key}
    foreach>
update>

测试方法


     @Test
    public void testInit() throws Exception{
        Map hostIds = new HashMap();
        hostIds.put(111L,123L);
        hostIds.put(222L,5556665L);
        nebDAO.modifyHostId(hostIds);
    }


完美更新

你可能感兴趣的:(mybatis)