如何使用Spring从JSON请求构造对象和相关对象

如何使用Spring从JSON请求构造对象和相关对象,json,spring,spring-mvc,Json,Spring,Spring Mvc,我正在向Spring3.0控制器发送一个JSON请求。方法签名是 @RequestMapping(value="/add", method=RequestMethod.POST) public @ResponseBody Map<String, ? extends Object> add(@RequestBody Entry) 条目对象有一个类型为用户的属性 提交请求时会引发此错误 org.codehaus.jackson.map.JsonMappingException: Can

我正在向Spring3.0控制器发送一个JSON请求。方法签名是

@RequestMapping(value="/add", method=RequestMethod.POST)
public @ResponseBody Map<String, ? extends Object> add(@RequestBody Entry)
条目对象有一个类型为用户的属性

提交请求时会引发此错误

org.codehaus.jackson.map.JsonMappingException: Can not construct instance of com.x.y.z.Entry, problem: no suitable creator method found
我猜这个错误是因为条目上的user是user类型而不是String(“1”在JSON上传递)


有没有一种方法可以将“1”输入并使用它创建一个真正的用户对象(在本例中通过在数据库中查找它)?

条目是否有无参数构造函数

那是你第一个去看的地方。通常发生这种性质的错误是因为代码正在寻找无参数构造函数来创建条目

您的想法是,将用户创建为真实用户是可以的,但是应该在调用此方法之后,在其他层或其他什么地方完成。您希望通过不干扰json的编组来简化事情。您可以使用另一层添加到该层上

org.codehaus.jackson.map.JsonMappingException: Can not construct instance of com.x.y.z.Entry, problem: no suitable creator method found