zoukankan      html  css  js  c++  java
  • mybatis批量修改

    只执行一条语句批量更新

    更新语句 update table set dept_id=?,emp_code=?  where id in (1,2,3);

    1.接口

        int batchUpdateEmpParams(@Param("list") List<Emp> list, @Param("deptId") String deptId,
                @Param("empCode") String empCode);

    2.xml

    <update id="batchUpdateEmpParams" parameterType="Map">
            update table 
        <set>
            <if test="deptId!= null and deptId!= '' ">
                    dept_id = #{deptId,jdbcType=VARCHAR},
                </if>
            <if test="empCode!= null and empCode!= '' "> 
              emp_code = #{empCode,jdbcType=VARCHAR} 
           </if>
        </set> 
    where id in <foreach collection="list" index="index" item="item" open="(" separator="," close=")"> #{item.id,jdbcType=VARCHAR} </foreach> </update>

      

    3.Emp.java

    public class Emp implements Serializable {
        private String id;
    
        private String empCode;
    
        private String deptId;
       //getter setter
    
    }
    

      

    4.控制器

     /**
         * 批量修改部门、code
         * 员工id用英文逗号隔开 如1,2,3
         * @author kpzc
         * @time 20181128
         */
    @RequestMapping(value = "/xxx.json") public void batchUpdateEmpParams(Emp emp,HttpServletRequest request) {     List<Emp> empList = new ArrayList<Emp>(); if(null!=emp){ String [] ids=null; if(null!=emp.getId()){ ids=emp.getId().split(","); } for (int i = 0; i < ids.length; i++) { Emp e=new Emp(); e.setId(ids[i]); empList.add(e); } } int updateRows=0; try{ updateRows = empMapper.batchUpdateEmpParams(empList, emp.getDeptId(), emp.getEmpCode()); }catch(Exception e){ e.printStackTrace(); //批量修改员工记录异常! } if (updateRows > 0) {     //批量修改员工记录成功    } }
  • 相关阅读:
    SQL创建索引
    SQLServer最耗资源时间的SQL语句
    C# Linq删除父级的同时删除子级
    C# 根据类名创建类的实例对象
    C#利用反射实现两个类的对象之间相同属性的值的复制
    linq时间筛选以及list时间筛选
    为什么watch机制不是银弹?
    我们的前端模版引擎更新总结
    小矮人Javascript模块加载器
    Javascript模版引擎简介
  • 原文地址:https://www.cnblogs.com/zjk1/p/10032753.html
Copyright © 2011-2022 走看看