SpingMvc復雜參數傳收總結
引言
上一篇文章[javaWeb傳收參數方式總結]總結了簡單傳收參數,這一篇講如何傳收復雜參數
比如Long[] 、User(bean里面包含List)、User[]、List<User><user style="margin: 0px; padding: 0px; max-width: 100%; overflow-wrap: break-word !important; box-sizing: border-box;">、List<Map<String,Object>等幾種復雜參數</user>。
簡單數組集合類
比如Long[],String[],List<User><long style="margin: 0px; padding: 0px; max-width: 100%; overflow-wrap: break-word !important; box-sizing: border-box;">等</long>
1.重復單個參數
前端
//(1)普通
http://localhost:8080/ajaxGet?id=1&id=2&id=3
//(2)Ajaxget方式 發(fā)送請求時等于(1)方式
$.ajax({
type: "GET",
url: "http://localhost:8080/ajaxGet?id=1&id=2&id=3"
});//(3)Form表單GET方式 發(fā)送請求時等于(1)方式
<form id="fromGet" action="fromGet" method="GET">
<input type="text"name="id" value="1">
<input type="text"name="id" value="2">
<input type="text"name="id" value="3">
</form>//(4)Form表單POST方式
//發(fā)送請求參數會被拼接成 id=1&id=2&id=3 存儲在請求體中
<form id="fromGet" action="fromGet" method="POST">
<input type="text"name="id" value="1">
<input type="text"name="id" value="2">
<input type="text"name="id" value="3">
</form>后端SpringMvc:
//數組
public void ajaxGet(Long[] id){
}//List集合
public void ajaxGet(@RequestParam("id") List<Long> id){
}2.數組參數
前端:
//(1)普通url
http://localhost:8080/ajaxGet?id[]=1&id[]=2&id[]=3
//2.Form GET方式(Ajax異步表單提交) 發(fā)送請求時等于(1)方式
$.ajax({
type: "GET",
url: "http://localhost:8080/ajaxGet",
data: {"id":[1,2,3]},
contentType:'application/x-www-form-urlencoded'
});//(3)Form POST方式(Ajax異步表單提交)
//發(fā)送請求參數會被拼接成 id[]=1&id[]=2&id[]=3 存儲在請求體中
$.ajax({
type: "POST",
url: "http://localhost:8080/ajaxPost",
data: {"id":[1,2,3]},
contentType:'application/x-www-form-urlencoded'
});后端SpringMvc:
//數組
public void ajaxGet(@RequestParam("id[]") Long[] id){
}//List集合
public void ajaxGet(@RequestParam("id[]") List<Long> id){
}其實以上兩種都是一個道理,主要是看發(fā)送請求時 參數是id還是id[](可使用瀏覽器的F12開發(fā)者工具查看network請求),來決定后端使不使用@RequestParam("id[]")進行數據綁定
復雜實體類與集合
比如User(bean里面包含List)、User[]、List<User><user style="margin: 0px; padding: 0px; max-width: 100%; overflow-wrap: break-word !important; box-sizing: border-box;">、List<Map<String,Object>等,此種類型均使用Json提交</user>
1.復雜實體類User
User實體類
//User實體類
public class User {
private String name;
private String pwd;
private List<User> customers;//屬于用戶的客戶群
//省略getter/setter
}前端:
//用戶
var user = {};
user.name = "李剛";
user.pwd = "888";
//客戶
var customerArray = new Array();
customerArray.push({name: "李四",pwd: "123"});
customerArray.push({name: "張三",pwd: "332"});
user. customers = customerArray;
$.ajax({
type: "POST",
url: "http://localhost:8080/ajaxPost",
data: JSON.stringify(user),
contentType:'application/json;charset=utf-8'
});后端SpringMvc:
public void ajaxPost(@ResponBody User user){
}前端:
//用戶
var userList = new Array();
userList.push({name: "李四",pwd: "123"});
userList.push({name: "張三",pwd: "332"});
$.ajax({
type: "POST",
url: "http://localhost:8080/ajaxPost",
data: JSON.stringify(userList),
contentType:'application/json;charset=utf-8'
});后端SpringMvc:
public void ajaxPost(@ResponBody User[] user){
}public void ajaxPost(@ResponBody List<User> user){
}public void ajaxPost(@ResponBody List<Map<String,Object>> userMap){
}以上就是SpingMvc復雜參數傳收總結的詳細內容,更多關于SpingMvc復雜參數傳收的資料請關注腳本之家其它相關文章!
相關文章
Linux系統(tǒng)下搭建Java開發(fā)環(huán)境
本文主要是記錄了如何在Linux環(huán)境下一步步安裝JAVA JDK環(huán)境,非常簡單實用,有需要的朋友可以參考下2014-10-10
解決websocket 報 Could not decode a text frame as UTF-8錯誤
這篇文章主要介紹了解決websocket 報 Could not decode a text frame as UTF-8錯誤,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10
Spring?cloud?OpenFeign中動態(tài)URl、動態(tài)傳遞接口地址代碼示例
openFeign是作為微服務之間調用的解決方案,每個微服務項目是必不可少的,下面這篇文章主要給大家介紹了關于Spring?cloud?OpenFeign中動態(tài)URl、動態(tài)傳遞接口地址的相關資料,需要的朋友可以參考下2024-02-02
Java 中Json中既有對象又有數組的參數如何轉化成對象(推薦)
Gson庫是一個功能強大、易于使用的Java序列化/反序列化庫,它提供了豐富的API來支持Java對象和JSON之間的轉換,這篇文章主要介紹了Java 中Json中既有對象又有數組的參數如何轉化成對象,需要的朋友可以參考下2024-07-07
Java使用ant.jar執(zhí)行SQL腳本文件的示例代碼
這篇文章主要介紹了Java使用ant.jar執(zhí)行SQL腳本文件,文中通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2024-02-02
Simple Java Mail郵件發(fā)送實現過程解析
這篇文章主要介紹了Simple Java Mail郵件發(fā)送實現過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-11-11

