В веб-клиенте Vert.x можно ли сопоставить ответ JSON с коллекцией POJO?
В руководстве к веб-клиенту Vert.x приведен пример декодирования входящего ответа JSON в POJO:
client
.get(8080, "myserver.mycompany.com", "/some-uri")
.as(BodyCodec.json(User.class))
.send(ar -> {
// Process the response
})
Есть ли способ декодировать входящий массив JSON в коллекцию объектов?
1 ответ
Решение
Я не верю, что вы можете использовать BodyCodec
конвертировать контент прямо в коллекцию объектов.
Однако вы используете ядро 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 {
// ...
}
});