后台可以使用 @ModelAttribute 、 @RequestBody
都是根据被转换的对象的字段依次从请求参数中获取对应的字段设置值。
前端有所不同:
data 一个要的json字符串, 一个是 json对象
1. @RequestBody
$.ajax({
type: "post",
contentType: 'application/json;charset=UTF-8', //必须这么写; 表示传递的参数 是 json类型的
dataType:'json',//非必须
data: JSON.stringify({ //必须转换为json字符串传递 ,要直接传该字符,否则就是错误。
userName: 'xxx'
} ),
url: 'user/save',
success: function (res) {
console.log(res);
}
});
2. @ModelAttribute
$.ajax({
type: "post",
// contentType: 'application/x-www-form-urlencoded;charset=UTF-8',//这是默认的 请求类型
data: { //必须转换为json字符串 ,直接传json
userName: 'xxx'
} ,
url: 'user/save',
success: function (res) {
console.log(res);
}
});
// 如果是 form 表单提交,也是可以封装成对象的。
// 后台controller,直接用对象去接。但是需要对数据进行规范