0
0

More than 1 year has passed since last update.

JavaのHttpClientで、APIのレスポンスボディを自作クラスのインスタンスにする方法

Last updated at Posted at 2022-01-12

以下のAPIのレスポンスボディを扱いやすくしたい

{
  "id":"1",
  "name":"田中"
}

方法

レスポンスボディに対応したプロパティを持つクラスを作成する

public class ApiResponseBody {
  private String id;
  private String name;
}

jacksonを導入する(今回はMaven)

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.13.1</version>
</dependency>

レスポンスボディを自作クラスのインスタンスにする

// APIにリクエスト
var client = HttpClient.newHttpClient();
var request = HttpRequest.newBuilder()
    .uri(URI.create("URL"))
    .build();
var response = client.send(request, HttpResponse.BodyHandlers.ofString());

// レスポンスボディをApiResponseBodyにパーシング
var objectMapper = new ObjectMapper();
var apiResponseBody = objectMapper.readValue(response.body(), ApiResponseBody.class);
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0