如何解析 JSON 数组以列出对象。我调用请求的另一个系统的客户端正在消耗正文 JSON 并返回响应
List<Model1>
作为 JSON。当我调用此请求时,我想获取此响应并将其转换为列表(位于我的系统中)。我知道列表中包含的对象的结构,因此我准备了 POJO 类来将 model1 解析为 model2。我是否需要将 Model2 类(系统中的 POJO)包装到另一个类?
我使用的是 WebTarget,URL 已完成,如下所示:
WebTarget wt = target();
wt.path(URL)
.request()
.accept(MediaType.APPLICATION_JSON)
.post(Entity.entity(consumedBody,MediaType.APPLICATION_JSON), Model2);
或者我应该使用包含一个 List 字段的包装类,我们称之为 WrapperModel2
wt.path(URL)
.request()
.accept(MediaType.APPLICATION_JSON)
.post(Entity.entity(consumedBody,MediaType.APPLICATION_JSON), WrapperModel2);
每次我收到错误消息“无法将 JSON 数组解析为:Model2 或 WrapperModel2。如何将 Json 数组正确解析为特定对象列表?
最佳答案
我相信您正在使用 JAX-RS,所以您可以尝试一下吗:
.post(Entity.entity(request, MediaType.APPLICATION_JSON_TYPE), new GenericType<List<Model2>>() {
});
关于java - 如何从 REST post 请求中解析 Json 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61618749/