在 Java 中将没有任何根目录的 JsonArray 解析为 POJO 类

Parse JsonArray without any root to POJO class in Java

提问人:Loren 提问时间:8/25/2023 更新时间:8/25/2023 访问量:32

问:

我正在尝试将 api 的失败响应映射到 java 类。失败的响应如下所示。200OK 响应在 ordersList 对象中正确映射,但在失败情况下,服务器返回以下 json(我无法更改 3rdParty 拥有的响应)

[
    {
    "errorCode": "404",
    "errorMessage": "Data not found"
    }
] 

波霍

@JsonIgnoreProperties(ignoreUnknown = true)
@Data
@Builder
public class Response {

private int total;
private String errorCode;
private String errorMessage;
private String description;
private List<Order> ordersList;
private List<Error> errors;
}

这就是我调用api的方式

  Response response =
      webClient
          .post()
          .uri(url, uri -> uri.queryParam(Constants.QUERY_PARAM).build())
          .header("Content-Type", "application/json")
          .bodyValue(request)
          .retrieve()
          .bodyToMono(Response.class)
          .block();
Java 数组 JSON 解析 WebClient

评论

0赞 derpirscher 8/26/2023
您的 JSON 响应是一个数组,但您正在尝试将其解析为对象。
0赞 Loren 8/28/2023
那么我应该将私有List<Error>错误转换为数组吗?
0赞 derpirscher 8/28/2023
不,您应该将 JSON 解析为List<Response>

答: 暂无答案