前后端利用jquery进行ajax通信(以json为媒介) 续1
2个月前 • 95次点击 • 来自 SpringBoot
在前后端通信时,如果前端上传的数据为复杂对象,例如包含List,Map,String等复合型数据时候,在前端处理数据时也必须和后端一一对应。
前端发起请求
<script type="application/javascript">
$(function(){
var user = {}
var arr = new Array();
arr.push(1);
arr.push(2);
var map = {a: 123, b:898};
user.name = "张三";
user.map = map;
user.list = arr;
var data = JSON.stringify(user);
console.log(data);
$.ajax({
type:'POST',
url:'/bb/aj',
data:data,
contentType: 'application/json',
success:function(data){
alert(data)
}
})
})
</script>
后端Java Bean映射
public class User extends BaseEntity {
private String name = null;
private Map<String, Object> map = null;
private List<String> list = null;
...省略getter/setter
@Override
public String toString() {
return "User{" +
"name='" + name + '\'' +
", map=" + map +
", list=" + list +
'}';
}
}
后端Controller接收数据并处理
@Controller
@RequestMapping(value = "/bb")
public class BBController extends BaseSpringController {
@ResponseBody
@RequestMapping(value = "/aj")
public User addJson(@RequestBody User user){
System.out.println(user);
return user;
}
}
标签