我有一个Spring MVC Servlet,我需要从JavaScript前端Web应用程序接受JSON。要解析JSON,我需要使用Jackson。我需要获取JSON中的值并将它们按在JSON中出现的顺序存储到列表中。我尝试过将JsonFactory与JsonParser和JsonNode对象一起使用,但是可以使其正常工作。我也尝试过打开BufferedReader并逐行遍历请求正文,但同样不能完全做到这一点。我在这里查看了几个相关的问题,但是到目前为止,没有一个问题对我有用。
知道的任何人都可以在这里向我指出正确的方向,带有示例的网页会很棒!
使用诸如Jackson的映射技术的全部要点是,你可以使用Objects(你不必自己解析JSON)。
定义一个类似于你所期望的JSON的Java类。
例如这个JSON:
{ "foo" : ["abc","one","two","three"], "bar" : "true", "baz" : "1" }
可以映射到此类:
public class Fizzle{ private List<String> foo; private boolean bar; private int baz; // getters and setters omitted }
现在,如果你具有如下Controller方法:
@RequestMapping("somepath") @ResponseBody public Fozzle doSomeThing(@RequestBody Fizzle input){ return new Fozzle(input); }
然后从上方传递JSON,Jackson会自动为你创建一个Fizzle对象,并将返回的Object的JSON视图序列化为mime type的响应application/json。
application/json