【项目实战】mybatis +vue.js 前后端交互批量删除
生活随笔
收集整理的這篇文章主要介紹了
【项目实战】mybatis +vue.js 前后端交互批量删除
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
單個刪除功能已經實現了,批量刪除弄了很久也沒弄好,來試一下。弄了很久終于把批量刪除實現了!
結果:
點擊確認后,將看見表中已經少了兩條數據。
實現的關鍵是:1.正確傳遞數據給后端的js語句
2.后端接收的方式,為json類型時需要進行解析
3.接收到的是一個字符串,可以轉為list類型,在sql語句中注意collection的參數要與自定義的類型相匹配
4.在dao接口中的參數要與xml中實際傳遞的參數匹配
5.前端設置一個多選框選項數組,每選中一個就把這個加入到數組中。
關鍵代碼:
js:
要注意這句:
data : {id:wNums},
發現當id為其他字符(如num)時,無法批量刪除自己增加的錯題,可能是因為這個id須與后端數據庫的id字段相同才能正確刪除。
elementui渲染:
(包含單個刪除部分)
java處理:
xml:
接口:
public int delete(Integer id);public boolean doRemoveeMore(List<String> arr);controller:
@DeleteMapping("/deleteerror/{id}")public String deleteUser( @PathVariable("id")Integer id){System.out.println(id);int i = errorBookDao.delete(id);String str = i >0?"success":"error";return str;}@PostMapping("/deletemany")public boolean deletebatch(@RequestBody String nums) {System.out.println(nums);Map<String, Object> jsonMap = JSON.parseObject(nums);System.out.println(jsonMap.get("id"));//class m =jsonMap.get("id").getClass();// System.out.println(object.getJSONObject("id"));// int wNums = errorBook.getId();String[] ns=jsonMap.get("id").toString().split(",");List<String> wNums=new ArrayList<String>();for(int i=0;i<ns.length;i++){wNums.add(ns[i]);} // System.out.println(wNums);boolean doremove=errorBookDao.doRemoveeMore(wNums);return true;}bean層:
public class ErrorBook {private Integer id;//private String datee;private String content;private String answer;private String reason;private String master;private String subject;}//省略了getter setter總結
以上是生活随笔為你收集整理的【项目实战】mybatis +vue.js 前后端交互批量删除的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【后端过程记录】用flask搭建服务器作
- 下一篇: robomaster视觉组代码中的一些函