SpringMVC接收復雜集合引數
在接收集合請求引數時,需要在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程式碼:
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
- …
- },
- error: function(res){
- …
- }
- });
2、Controller方法:
Java程式碼- @Controller
- @RequestMapping("/catalog.do")
- public class CatalogController {
- @RequestMapping(params = "fn=deleteCatalogSchemes")
- @ResponseBody
- public AjaxJson deleteCatalogSchemes(@RequestParam
- …
- }
- }
- 接收List<User>、User[]集合引數:
1、User實體類:
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),//將物件序列化成JSON字串
- dataType:"json",
- contentType : 'application/json;charset=utf-8', //設定請求頭資訊
- 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[]陣列,只需要把saveUsers的引數型別改為@RequestBody User[] userArray就行了。
- 接收List<Map<String,Object>>集合引數:
1、頁面js程式碼(不需要User物件了):
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){
- …
- }
- });
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)集合引數:
1、User實體類:
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),//將物件序列化成JSON字串
- dataType:"json",
- contentType : 'application/json;charset=utf-8', //設定請求頭資訊
- 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();
- …
- }
- }
相關推薦
SpringMVC接收復雜集合引數
在接收集合請求引數時,需要在Controller方法的集合引數裡前新增@RequestBody,而@RequestBody預設接收的enctype (MIME編碼)是application/json,因此傳送POST請求時需要設定請求報文頭資訊,否則Spring MV
SpringMVC接收復雜集合引數【轉載】
宣告:本部落格轉載於博主“jxd_zxf”的部落格,原文章連結:http://jxd-zxf.iteye.com/blog/2072300/Spring MVC在接收集合請求引數時,需要在Controller方法的集合引數裡前新增@RequestBody,而@RequestB
springMvc 接收復雜的引數型別
Spring MVC在接收集合請求引數時,需要在Controller方法的集合引數裡前新增@RequestBody,而@RequestBody預設接收的enctype (MIME編碼)是application/json,因此傳送POST請求時需要設定請求報文頭資訊,否則Spr
SpringMVC接收復雜對象
技術分享 解析 img att 題目 spring bsp mat 高中 SpringMVC接收復雜對象 轉載請註明地址:http://www.cnblogs.com/funnyzpc/p/7642977.html 本節內容暫放一邊,我先扯點兒,心情好了,代碼順風順水哈
springmvc接收復雜型別的json資料需要注意的地方
1.如果接收的是普通的資料型別或者單物件 後端的方法上面什麼也不需要處理,只需要將物件放入到引數上面就可以了 2.如果接收的是複雜型別 例如物件裡面還包含物件或者是集合等,後端的方法引數上面只需要加
Spring mvc接收復雜資料型別
**前言:**Spring MVC在接收集合請求引數時,需要在Controller方法的集合引數裡前新增@RequestBody,而@RequestBody預設接收的enctype (MIME編碼)是application/json,因此傳送POST請求時需要設定請求報文頭資訊,否則Spri
springmvc接收集合引數,集合物件
Spring MVC在接收集合請求引數時,需要在Controller方法的集合引數裡前新增@RequestBody或者@RequestParam,而@RequestBody預設接收的enctype (MIME編碼)是application/json,因此傳送POST請求時需要
SpringMVC利用json接收復雜物件和陣列
1,SpringMVC接收復雜引數必須要在引數前加 @RequestBody 2,ajax設定引數 contentType: 'application/json;charset=utf-8'(設定傳送資料型別為json) data: JSON.stringify(物件
springmvc接口接收json類型參數設置
edi alt per 不能 convert ping ota pan art Springmvc需要如下配置: 1.開啟註解 <!-- 開啟註解--> <mvc:annotation-driven /> 2.加入相關bean <
第十五章 接口和集合
特性 抽象 nts 子類 列表 方式 靜態常量 eem ins 1. 接口的關鍵字:interface 2. 接口的特性: 1)接口屬性都是靜態常量 2)方法都是抽象方法 3)實現類必須實現接口的所有方法 4)實現類可以實現多個接口 5
springmvc學習筆記(13)-springmvc註解開發之集合類型參數綁定
return 可擴展性 list .net items trac class javascrip lin springmvc學習筆記(13)-springmvc註解開發之集合類型參數綁定
springmvc接口ios網絡請求
es2017 ica pri log nbsp mvc http alt .cn springmvc: application/json;charset=utf-8的ios網絡請求: 後臺使用 @RequestBody註解參數接收: springmvc接口ios網絡
c#中常用集合類和集合接口之集合類系列【轉】
arr 關聯 special rect 替代 不能 一個數 lock resize 常用集合接口系列:http://www.cnblogs.com/fengxiaojiu/p/7997704.html 常用集合類系列:http://www.cnblogs.com/fengx
SpringMVC中@RequestMapping處理請求引數的@RequestParam註解
首先在頁面新增一個帶有引數的請求,分別是username和age <a href="springmvc/testRequestParam?username=yoni&age=20">Test RequestParam</a> 然後在類中新增方法
springmvc 傳遞和接收陣列引數
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
Springmvc——Controller接受各類請求引數
url傳送過來的請求攜帶的引數多種多樣,SpringMVC提供了諸多註解來解析引數。期目的就是 把控制器從複雜的Servlet API中剝離開來,解耦合,這樣就可以在非web容器環境中重用控制器,也方便測試。 請求引數大致可分為5種: 普通請求引數 需要@RequestP
SpringMVC自定義註解進行引數校驗
在我的另一篇部落格中(SpringMVC),學習瞭如何使用Spring MVC結合Hibernate的校驗框架validation(它和hibernate沒有任何關係)對引數進行校驗。在實際專案中,引數的校驗邏輯可能比較複雜,這時我們可以自定義註解來實現引數校驗,下面是一個簡單的例子。 po
SpringMVC自定義註解進行引數校驗(以校驗列舉值是否合法為例)
pom引入springMVC依賴,以springboot專案為例 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-
springMVC——將url中的引數轉成實體
控制層 package com.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapp
SpringMvc方法獲取和返回引數原始碼探究
簡介 SpringMvc的方法裡我們可以接受各式各樣型別的引數,Stirng、Integer、@RequestBody(Json)、ModelAndView(Spring自動注入的一些引數)等,那麼SpringMvc是如何將這些引數注入的呢? 例子 分別用postm