mybatis批量操作

来源:互联网 发布:linux系统的基本命令 编辑:程序博客网 时间:2024/04/25 20:52

以批量插入为主



springmvc+mybatis



XML中



<insert id="addRolefunmenu" parameterType="java.util.List">
       
      insert into Rolefunmenurel(roleid,funid) values
       <foreach collection="list" item="item" index="index" separator="," >  
        (#{item.roleid},#{item.funid})  
    </foreach>
  </insert>



业务逻辑层实现



@Override
    public void insertRoleinfo(Roleinfo roleinfo, Integer[] funids) {
        // TODO Auto-generated method stub
        roleDao.insertRoleinfo(roleinfo);
        Integer roleid=roleDao.getRoleidByName(roleinfo.getRolename());
        List<Rolefunmenurel> list = new ArrayList<Rolefunmenurel>();
        for (Integer funId : funids) {

            Rolefunmenurel rolefunrel = new Rolefunmenurel();
            rolefunrel.setRoleid(roleid);
            rolefunrel.setFunid(funId);
            list.add(rolefunrel);
            //rolefunmenurelDao.addRolefunmenu(rolefunrel);
        }
        rolefunmenurelDao.addRolefunmenu(list);
    }


这个执行效率远大于 循环插入