springmvc+mybatis+ajax 批量插入数据
生活随笔
收集整理的這篇文章主要介紹了
springmvc+mybatis+ajax 批量插入数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
批量插入。AJAX發起請求,核心代碼如下:
var?mids?=?new?Array(); for?(var?i=0;?i<?rows.length;?i++)?{mids.push(rows[i].id); } $.ajax({type:?'POST',dataType:?"json",async:?false,traditional:true,?//這一行很重要url:?parent.getBasePath()+"sys/role/setAuth.do",data:?{'mids':?mids},success:?function(data)?{},error:?function(err)?{} });接下來是Controller的代碼:
//直接在方法里傳入List會報錯,所以要通過一個類封裝一層 @RequestMapping("/setAuth") @ResponseBody public?Map<String,Object>?setAuth(Short?id,?ModParam?midsA)?{}//封裝List對象的類 public?class?ModParam?implements?Serializable{private?static?final?long?serialVersionUID?=?8607859409880232081L;private?List<Short>?mids;public?List<Short>?getMids()?{return?mids;}public?void?setMids(List<Short>?mids)?{this.mids?=?mids;}}Contoller一層一層的往下調用,最后到了Mapper:
/****?批量插入*?@return*?@throws?Exception*/ int?insertWithList(List<RoleResource>?rr)?throws?Exception;對應的xml(我這里的id不是一個自增的Sequence,我是去表中選取最大的id,然后依次加1,寫入到對象,所以沒有用到mybatis的selectKey,這里是針對Oracle):
??<insert?id="insertWithList"?parameterType="java.util.List">insert?into?T_WEB_ROLE_RESOURCE(id,?role_id,?source_id,?remark)?<foreach?collection="list"?item="item"?index="index"?separator="union?all">select?#{item.id},#{item.roleId},#{item.sourceId},#{item.remark}?from?dual</foreach></insert>嗯,這就差不多了。
附上一個參考鏈接:
http://chenzhou123520.iteye.com/blog/1583407
轉載于:https://my.oschina.net/u/2245029/blog/526848
總結
以上是生活随笔為你收集整理的springmvc+mybatis+ajax 批量插入数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL 表空间
- 下一篇: [实战]MVC5+EF6+MySql企业