轉自:https://blog.csdn.net/qq_27093465/article/details/52094112
https://www.cnblogs.com/yfzhou/p/9661994.html
spring MVC后台處理數組對象。
list類型的參數,接收前台的數組值,實驗了一下,結果還真可以。
不用綁定到對象里面。
當然我這個是前台傳遞了個包含的是string的數組到后台,然后,后台用list來接收。
具體如下:
前台代碼:
//發送請求到后台,帶數組形式的數據。
function testList() {
var data = getTreeViewCheckedData();
$.ajax({
url: APP_NAME + "xxxx/testList",
data: {
list:data
},
dataType: "json",
success: function (data) {
}
});
}
//獲得數據---以數組的形式存儲
function getTreeViewCheckedData() {
var checkedData = [];
$('#shareSetting').find('ol.bonsai input:checkbox:checked').each(function () {
checkedData.push($(this).val())
}
);
return checkedData;
}
后台代碼:
//方式一,用list接收前台的數組參數。
@RequestMapping(value = "/testList")
@ResponseBody
public JsonResult testList(@RequestParam(required = false, value = "list[]") List<String> list){
LOG.debug("---------------XxxxController: testList---------------");
LOG.debug("---------------list:\t" + list);
return new JsonResult(true,"ok ",null);
}
//方式二,用數組接收前台的數組參數。然后轉化成list,雖然沒必要。
@RequestMapping(value = "/testList")
@ResponseBody
public JsonResult testList(@RequestParam(required = false, value = "list[]") String[] list){
LOG.debug("---------------XxxxController: testList---------------");
LOG.debug("---------------list:\t" + list);
List<String> newList = Lists.newArrayList(Arrays.asList(list));
return new JsonResult(true,"ok ",null);
}
注意的地方:
value = "list[],這個好像不能省,
另外你要是修改方法上的參數的話,就得重啟一下,不然得不到值
這個list要和前台的數據一模一樣。
————————————————
版權聲明:本文為CSDN博主「李學凱」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_27093465/article/details/52094112
前端JS
1 var taskList = ["123","456"]; 2 var params = { 3 taskList: taskList 4 }; 5 6 $.ajax({ 7 type: "PUT", 8 dataType: "json", 9 url: "/client/update", 10 data: params, 11 success: function (msg) { 12 } 13 });
后端接收:
1 @RequestMapping(value = "/update", method = RequestMethod.PUT) 2 @ResponseBody 3 public JSONResult updateClient(Client client, @RequestParam(value = "taskList[]") List<String> taskList) { 4 logger.debug("Yufan taskList={}", taskList); 5 return JSONResult.ok(); 6 }
參考文獻:spring MVC 前台傳數組類型,后台用list類型接收也是可以的