好的,所以我已经研究了一段时间了,不再赘述。我有一个 Spring MVC servlet,我需要从 JavaScript 前端 Web 应用程序接受 JSON。要解析 JSON,我需要使用 Jackson。我需要获取 JSON 中的值并按照它们在 JSON 中出现的顺序将它们存储到列表中。我已经尝试将 JsonFactory 与 JsonParser 和 JsonNode 对象一起使用,但完全可以让它工作。我也尝试打开一个 BufferedReader 并逐行遍历请求正文,但也不能完全得到这个。我在这里查看了几个相关问题,但到目前为止没有一个对我有用。
知道的任何人都可以在这里为我指明正确的方向吗,带有示例的网页会很棒!
最佳答案
使用像 Jackson 这样的映射技术的全部意义在于您可以使用对象(您不必自己解析 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 View 序列化为具有 mime 类型 application/json
的响应.
完整的工作示例see this previous answer of mine .
关于java - 在 Spring MVC 中使用 Jackson JSON 解析 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6019562/