标签:function 发送 JSON private SSM Ajax import lombok response
Ajax发送复杂对象(用到实体类)
pojo代码:
Student:(学生类)
package com.lyc.pojo;
import lombok.Data;
import java.util.List;
import java.util.Map;
@Data
public class Student {
private Integer stuId;
private String stuName;
private Address address;
private List<Subject> subjectList;
private Map<String, String> map;
}
Address:(地址类)
package com.lyc.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Address {
private String province;
private String city;
private String street;
}
Subject:(科目类)
package com.lyc.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Subject {
private String subjectName;
private Integer subjectScore;
}
jsp代码:
<script type="text/javascript" src="jquery/jquery-2.1.1.min.js"></script>
<script>
$(function () {
$("#btn4").click(function () {
//准备要发送的数据
let student = {
"stuId": 5,
"stuName": "tom",
"address": {
"province": "广东",
"city": "深圳",
"street": "后端"
},
"subjectList": [
{
"subjectName": "JAVASE",
"subjectScore": 100
},
{
"subjectName": "SSM",
"subjectScore": 99
}
],
"map": {
"k1": "v1",
"k2": "v2"
}
};
//将JSON对象转换为JSON字符串
let requestBody = JSON.stringify(student);
//发送Ajax请求
$.ajax({
"url": "send/compose/object.html",
"type": "post",
"data": requestBody,
"contentType": "application/json;charset=UTF-8",
"dataType": "text",
"success": function (response) {
alert(response)
},
"error": function (response) {
alert(response)
}
})
})
})
</script>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>首页</title>
<script type="text/javascript" src="jquery/jquery-2.1.1.min.js"></script>
<script>
$(function () {
$("#btn4").click(function () {
//准备要发送的数据
let student = {
"stuId": 5,
"stuName": "tom",
"address": {
"province": "广东",
"city": "深圳",
"street": "后端"
},
"subjectList": [
{
"subjectName": "JAVASE",
"subjectScore": 100
},
{
"subjectName": "SSM",
"subjectScore": 99
}
],
"map": {
"k1": "v1",
"k2": "v2"
}
};
//将JSON对象转换为JSON字符串
let requestBody = JSON.stringify(student);
//发送Ajax请求
$.ajax({
"url": "send/compose/object.html",
"type": "post",
"data": requestBody,
"contentType": "application/json;charset=UTF-8",
"dataType": "text",
"success": function (response) {
alert(response)
},
"error": function (response) {
alert(response)
}
})
})
})
</script>
</head>
<body>
<button id="btn4">sendComplexObjects</button>
</body>
</html>
Controller代码:
@ResponseBody
@RequestMapping("/send/compose/object.html")
public String testReceiveComposeObject(@RequestBody Student student){
logger.info(student.toString());
return "success";
}
运行结果:
标签:function,发送,JSON,private,SSM,Ajax,import,lombok,response 来源: https://www.cnblogs.com/liuyunche/p/14750911.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。