Springboot 前后端参数交互方式

springboot 前后端参数交互方式
Get 方式:
1. localhost:8080/index?id=1
@RequestParam(value = “grade”, defaultValue = “”) String grade)
2.
localhost:8080/index/{reportType}
localhost:8080/index-{reportType}
@RequestMapping(“/commonReportForm/{reportType}”)
@ResponseBody
public ModelAndView index(@PathVariable(name = “reportType”, required = false) Integer reportType, ModelAndView mv) { ….}

@RequestMapping(“/commonReportForm-{reportType}”)
@ResponseBody
public ModelAndView index(@PathVariable(name = “reportType”, required = false) Integer reportType, ModelAndView mv) { ….}

Post 方式:
直接以一个bean接收
public Object save( User user) {….}
前端传参方式:

form 表单 – * input 中 name 要与 bean中的属性名相同
ajax :

$.ajax({
type: “POST”,
url: dbrwListpath,
data: {
“id”: id,
“name”: name,
},
dataType: “json”,
success: function (data) {
//do something..
},
error: function (data) {
//do something..
}
});
json 传参方式:
public Object save(@RequestBody User user) {….}
前端ajax:
$.ajax({
type: “POST”,
headers: {
‘Accept’: ‘application/json’,
‘Content-Type’: ‘application/json’
},
url: dbrwListpath,
data: {
“id”: id,
“name”: name,
},
dataType: “json”,
success: function (data) {
//do something..
},
error: function (data) {
//do something..
}
});

Dto 封装方式:
public Object save(@RequestBody DataDto dto) {….}
public class DataDto{

//学校id
private Integer schoolId;
//幼儿信息
private List<User> users;

//get set …
}

前端ajax数据格式:
//示例

var user = [];
for (var i = 0; i < clen; i++) {
var c = {};
c.id = 1;
c.name = tom;
user.push(c);
}

//datas属性名需与Dto实体的属性名相同
var datas = {

schoolId:schoolId,
user:user

};

$.ajax({
type: “POST”,
headers: {
‘Accept’: ‘application/json’,
‘Content-Type’: ‘application/json’
},
url: “/comprehensiveDeclaration/comprehensive-” + comprehensiveId + “/step1-save”,
data: JSON.stringify(datas),
dataType: “json”,
success: function (response) {

//do something..

},
error: function (data) {
//do something..
}
});

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理