通常我们将对象从@RequestBody映射到控制器上的某个POJO。为了映射到POJO,我们应该知道@RequestBody对象中的字段。所以,我的问题是如何在控制器中使用此对象的最佳方式,如果您不知道请求内的字段。
是吗?
@RequestMapping(value = "/students", method = RequestMethod.POST, consumes = "application/json")
public @ResponseBody Student getStudent(@RequestBody String json) {
// then parse the json string into object...
}
请分享一些创新的想法。提前谢谢。
答案 0 :(得分:1)
更新了答案
根据问题的更新说明,如果您已经在使用Jackson,那么下面的代码将为您提供json字符串的映射。
ObjectMapper mapper = new ObjectMapper();
Map<String,Object> map = mapper.readValue(json, Map.class);
注意:我已经创建了ObjectMapper
的新实例,如果已经为应用程序定义了一个,可以使用ObjectMapper bean。
答案 1 :(得分:0)
您可以创建JSONObject。关注http://www.json.org/javadoc/org/json/JSONObject.html