如何使用 HttpClient 将 HttpResponse 转换为 Java 中的 Class?

How to convert HttpResponse to Class in Java with HttpClient?

我正在使用 Java HttpClient (java.net.http) 并且我正在发送 GET 请求。

我得到的响应是 class“UserDto”的 JSON 字符串。

HttpResponse<String> send = httpClient.send(accept, HttpResponse.BodyHandlers.ofString());

我不想接收字符串形式的响应,而是将其直接转换为“UserDto”对象。

您可以使用 gson package 将字符串映射到您的 UserDto class,如下所示:

String result;  // JSON String of the class "UserDto".
UserDto userDto = gson.fromJson(result, UserDto.class);
return userDto;

jackson 也是一个选项,但我更喜欢 gson,因为它的映射非常简单。