首页 > 其他分享> > 注解@requestBody自动封装复杂对象 (成功,自己的例子封装的不是一个复杂对象,只是一个简单的User对象,将jsp页面的name转成json字符转,再用JSON.stringify()传参
注解@requestBody自动封装复杂对象 (成功,自己的例子封装的不是一个复杂对象,只是一个简单的User对象,将jsp页面的name转成json字符转,再用JSON.stringify()传参
作者:互联网
注意:ajax向后台传值的时候,必须加上contentType:"application/json";
springmvc的注解@requestBody可以通过页面提交json来自动封装成bean对象,但是如果这样的怎么处理
public class User{
private String id;
private int age;
private String name;
private Class classInfo;
//getter,setter
}
public class ClassInfo{
private String id;
private name;
private User classMaster;
private School school;
@JsonIgnore
private Set<User> teachers;
//getter,setter
}
public class School{
private String id;
private String name;
//getter,setter
}
我封装的json对象是
"classInfo":{
"id":"xxxxx",
"name":"一年级三班",
//班主任
"classMaster":{
"id":"xxxx",
"age":"92",
"name":"班主任"
},
//学校
"school":{
"id":"xxx",
"name":"旭日东升小学"
},
//教师集合
"teachers":[
{
"id":"xxxx",
"age":"92",
"name":"语文老师"
},
{
"id":"xxxx",
"age":"92",
"name":"数学老师"
}
]
}
提交的时候data : JSON.stringify(classInfo)
这样的班级里面包含了班主任,教师集合,还有学校,后台是这样的
@requestMapping("xxxx")
@responseBody
public Map<String,Object> addClass(Model model, @requestBody ClassInfo classInfo){
xxxx
}
标签:传参,封装,name,对象,classInfo,private,xxxx,id,String 来源: https://www.cnblogs.com/mark5/p/10955483.html