溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么在SpringMVC中接收復(fù)雜的集合對(duì)象

發(fā)布時(shí)間:2021-04-08 16:12:43 來源:億速云 閱讀:213 作者:Leah 欄目:編程語言

這篇文章將為大家詳細(xì)講解有關(guān)怎么在SpringMVC中接收復(fù)雜的集合對(duì)象,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

1、頁面js代碼:

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方法:

Java代碼

@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[]集合參數(shù):

1、User實(shí)體類:

Java代碼

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

2、頁面js代碼:

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),//將對(duì)象序列化成JSON字符串 
  dataType:"json", 
  contentType : 'application/json;charset=utf-8', //設(shè)置請(qǐng)求頭信息 
  success: function(data){ 
    … 
  }, 
  error: function(res){ 
    … 
  } 
});

3、Controller方法:
Java代碼

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

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

接收List<Map<String,Object>>集合參數(shù):

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

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),//將對(duì)象序列化成JSON字符串 
  dataType:"json", 
  contentType : 'application/json;charset=utf-8', //設(shè)置請(qǐng)求頭信息 
  success: function(data){ 
    … 
  }, 
  error: function(res){ 
    … 
  } 
});

2、Controller方法:
Java代碼

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

接收User(bean里面包含List)集合參數(shù):
1、User實(shí)體類:
Java代碼

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

2、頁面js代碼:

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),//將對(duì)象序列化成JSON字符串 
  dataType:"json", 
  contentType : 'application/json;charset=utf-8', //設(shè)置請(qǐng)求頭信息 
  success: function(data){ 
    … 
  }, 
  error: function(res){ 
    … 
  } 
});

3、Controller方法:
Java代碼

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

關(guān)于怎么在SpringMVC中接收復(fù)雜的集合對(duì)象就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI