数据传送有很多方式,这里说一种常用并且简单的方式
html代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script type="text/javascript" src="../static/js/jquery-3.4.1.min.js"></script>
<script>
$(function () {
$('#send').click(function () {
var list = {};
var student1= {};
student1.name = '张三';
student1.sex = '男';
list[0] = student1;
var student2= {};
student2.name = '张三';
student2.sex = '男';
list[1] = student2;
$.ajax({
type:"post",
url:"/receiveData",
data:{'students':JSON.stringify(list)},
dataType:"json",
success:function (data) {
},
error:function (data) {
}
})
})
})
</script>
</head>
<body>
<input type="button" id="send" value="发送数据">
</body>
</html>
springboot后台
import com.alibaba.fastjson.JSONObject;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.Map;
/**
* @author HP
*/
@Controller
public class ReceiveController {
@RequestMapping("sendData")
public String send(){
return "sendData";
}
/**
* 使用注解@ReqeustBody对数据接收
* */
@RequestMapping("/receiveData")
@ResponseBody
public String get(@RequestBody String students){
try {
String decode = URLDecoder.decode(students, "utf-8");
int i = decode.indexOf("{");
String substring = decode.substring(i);
JSONObject jsonObject = JSONObject.parseObject(substring);
for (Map.Entry<String, Object> stringObjectEntry : jsonObject.entrySet()) {
System.out.println(stringObjectEntry.getKey());
System.out.println(stringObjectEntry.getValue());
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return "sendData";
}
}
这里直接把数据打印出来,结果:
分别是键和值,对于后面的处理具体问题具体考虑