麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

spirngmvc js傳遞復雜json參數到controller的實例

2019-11-19 14:05:41
字體:
來源:轉載
供稿:網友

Spring MVC在接收集合請求參數時,需要在Controller方法的集合參數里前添加@RequestBody,而@RequestBody默認接收的enctype (MIME編碼)是application/json,因此發送POST請求時需要設置請求報文頭信息,否則Spring MVC在解析集合請求參數時不會自動的轉換成JSON數據再解析成相應的集合。

以下列舉接收List<String>、List<User>、List<Map<String,Object>>、User[]、User(bean里面包含List)幾種較為復雜的集合參數示例:

接收List<String>集合參數:

1、頁面js代碼:

var idList = new Array(); idList.push(“1”); idList.push(“2”); idList.push(“3”); var isBatch = false; $.ajax({  type: "POST",  url: "<%=path%>/catalog.do?fn=deleteCatalogSchemes",  dataType: 'json',  data: {"idList":idList,"isBatch":isBatch},  success: function(data){   …  },  error: function(res){   …  } }); 

2、Controller方法:

@Controller @RequestMapping("/catalog.do") public class CatalogController {   @RequestMapping(params = "fn=deleteCatalogSchemes")  @ResponseBody  public AjaxJson deleteCatalogSchemes(@RequestParam("idList[]") List<String> idList,Boolean isBatch) {    …  } } 

接收List<User>、User[]集合參數:

1、User實體類:

public class User {   private String name;  private String pwd;  //省略getter/setter } 

2、頁面js代碼:

var userList = new Array(); userList.push({name: "李四",pwd: "123"}); userList.push({name: "張三",pwd: "332"}); $.ajax({  type: "POST",  url: "<%=path%>/catalog.do?fn=saveUsers",  data: JSON.stringify(userList),//將對象序列化成JSON字符串  dataType:"json",  contentType : 'application/json;charset=utf-8', //設置請求頭信息  success: function(data){   …  },  error: function(res){   …  } }); 

3、Controller方法:

@Controller @RequestMapping("/catalog.do") public class CatalogController {   @RequestMapping(params = "fn=saveUsers")  @ResponseBody  public AjaxJson saveUsers(@RequestBody List<User> userList) {   …  } } 

如果想要接收User[]數組,只需要把saveUsers的參數類型改為@RequestBody User[] userArray就行了。

接收List<Map<String,Object>>集合參數:

1、頁面js代碼(不需要User對象了):

var userList = new Array(); userList.push({name: "李四",pwd: "123"}); userList.push({name: "張三",pwd: "332"}); $.ajax({  type: "POST",  url: "<%=path%>/catalog.do?fn=saveUsers",  data: JSON.stringify(userList),//將對象序列化成JSON字符串  dataType:"json",  contentType : 'application/json;charset=utf-8', //設置請求頭信息  success: function(data){   …  },  error: function(res){   …  } }); 

2、Controller方法:

@Controller @RequestMapping("/catalog.do") public class CatalogController {   @RequestMapping(params = "fn=saveUsers")  @ResponseBody  public AjaxJson saveUsers(@RequestBody List<Map<String,Object>> listMap) {   …  } } 

接收User(bean里面包含List)集合參數:

1、User實體類:

public class User {  private String name;  private String pwd;  private List<User> customers;//屬于用戶的客戶群  //省略getter/setter } 

2、頁面js代碼:

var customerArray = new Array(); customerArray.push({name: "李四",pwd: "123"}); customerArray.push({name: "張三",pwd: "332"}); var user = {}; user.name = "李剛"; user.pwd = "888"; user. customers = customerArray; $.ajax({  type: "POST",  url: "<%=path%>/catalog.do?fn=saveUsers",  data: JSON.stringify(user),//將對象序列化成JSON字符串  dataType:"json",  contentType : 'application/json;charset=utf-8', //設置請求頭信息  success: function(data){   …  },  error: function(res){   …  } }); 

3、Controller方法:

@Controller @RequestMapping("/catalog.do") public class CatalogController {   @RequestMapping(params = "fn=saveUsers")  @ResponseBody  public AjaxJson saveUsers(@RequestBody User user) {   List<User> customers = user.getCustomers();   …  } } 

以上這篇spirngmvc js傳遞復雜json參數到controller的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 男女羞羞在线观看 | 天天夜碰日日摸日日澡性色av | 国产色视频在线观看免费 | 成人性视频免费网站下载软件 | 国产女厕一区二区三区在线视 | 999精品久久久 | 欧美另类综合 | 国产色片在线观看 | 黄色网电影| 中文字幕一二三区芒果 | 一级视频网站 | 九九热在线观看视频 | 九九午夜 | 天天草天天色 | 圆产精品久久久久久久久久久 | 韩国草草影院 | 国产影院一区 | 欧美三级欧美成人高清www | 99欧美精品 | gogo全球大胆高清人露出91 | 男男啪羞羞视频网站 | 欧美日韩在线播放一区 | 亚洲一区二区三区精品在线观看 | 日日鲁夜夜视频热线播放 | 中文字幕一二三区芒果 | 看免费一级毛片 | 欧美视频国产 | 欧美一级三级在线观看 | 精品国产精品久久 | 黄网站在线观 | 国产在线欧美日韩 | 1级黄色毛片 | 黄色大片在线免费看 | 国产精选电影免费在线观看网站 | 日本综合久久 | 欧美一级黄色录相 | 国产91porn| 色吧久久 | 成人免费一区二区三区在线观看 | 欧美综合在线观看 | 草莓视频久久 |