在 Vert.x Web 客户端中,我可以将 JSON 响应映射到 POJO 集合吗?

art*_*pov 2 java json vert.x vertx-httpclient

在 Vert.x Web 客户端手册中,有一个将传入的 JSON 响应解码为 POJO 的示例:

client
  .get(8080, "myserver.mycompany.com", "/some-uri")
  .as(BodyCodec.json(User.class))
  .send(ar -> {
      // Process the response
   })
Run Code Online (Sandbox Code Playgroud)

有没有办法将传入的 JSON 数组解码为对象集合?

tse*_*ont 6

我不相信您可以使用 aBodyCodec将内容直接转换为对象集合。

但是,您使用 Vert.x 核心Json类,其主体为Buffer

client
  .get(8080, "myserver.mycompany.com", "/some-uri")
  .send(ar -> {
    if (ar.succeeded()) {
      Buffer body = ar.result().body();
      List<User> users = Json.decodeValue(body, new TypeReference<List<User>>() {});
    } else {
      // ...
    }
  });
Run Code Online (Sandbox Code Playgroud)