SpringREST服务使用动态json字段
我从javascript获得了更新mongoDb集合的json请求。 部分json映射到我的java类(Person),但内部json映射到JsonObject是因为动态字段的名称。 将动态字段的名称映射到JsonObject并不起作用。 如何映射Person类中的动态字段以保持其在mongo db中的状态 但结果是:SpringREST服务使用动态json字段,json,spring,mongodb,rest,request,Json,Spring,Mongodb,Rest,Request,我从javascript获得了更新mongoDb集合的json请求。 部分json映射到我的java类(Person),但内部json映射到JsonObject是因为动态字段的名称。 将动态字段的名称映射到JsonObject并不起作用。 如何映射Person类中的动态字段以保持其在mongo db中的状态 但结果是: { "person": "david", "family": "david family", "address":"david street", "person_d
{ "person": "david",
"family": "david family",
"address":"david street",
"person_detail":{
"members":{} **<=== should be list of key value**
},
"address_detail":{
"members":{} **<=== should be list of key value**
}
}
我的控制器:
@RequestMapping(value={"/updatePerson"},method=RequestMethod.POST,consume="application/json")
public @ResponseBody ClientReturn clientReturn updatePerson(@RequestBody Person person) {
......
}
如何从客户端发布键值列表的解决方案是定义jsonObject 作为地图。 现在是我的工作了
public Class Person{
private String person;
private String family;
private Map<String,Object> person_detail;
private Map<String,Object> address_detail;
getter...
setter...
}
公共类人物{
私人串人;
私弦家庭;
私人地图个人详细信息;
私人地图地址_详情;
盖特。。。
塞特。。。
}
您正在尝试将列表映射到Json对象。您应该将其映射到JSONArray。如果您使用的是Jackson,您可以直接将其映射到列表。
public Class Person{
private String person;
private String family;
private Map<String,Object> person_detail;
private Map<String,Object> address_detail;
getter...
setter...
}