案例是给一个用户赋予多个权限多个权限用其对应的主键 id 为参数,组成了 一个id数组传给springMVC,然后springMVC传给mybatis然后mybatis批量插入。其实类似的场景还有批量删除多个也是类似的。
案例是给一个用户赋予多个权限多个权限用其对应的主键 id 为参数,组成了 一个id数组传给springMVC,然后springMVC传给mybatis然后mybatis批量插入。其实类似的场景还有批量删除多个也是类似的。
springMVCmybatis接收数组参数时最好不要使用 int, long等原始类型,而应该使用它们对应的包装类型不然当传入的参数为空时,会报错而包装类型可以使鼡null表示传入的空值。
我们看到使用了 foreach 来循环传递进来的数组 privIds最后组成的sql语句如下所示:
6. 批量删除多个的处理
删除时,和前面批量插入处悝也是极其类似的只在最后mybatis中xml中sql的写法有点区别:
比较批量删除和批量插入,可以看出 foreach 中的 open="(" 和 close=")" 只在循环的开始和结束会加上而 separator="," 是每循環一次,就加一次逗号
7. 批量插入传入对象List的例子:
其实掌握了 批量插入和批量删除,批量更新也是一样的
案例是给一个用户赋予多个权限多个权限用其对应的主键 id 为参数,组成了 一个id数组传给springMVC,然后springMVC传给mybatis然后mybatis批量插入。其实类似的场景还有批量删除多个也是类似的。