- RestTemplateを使用する方法: Spring Bootでは、RestTemplateクラスを使用してHTTPリクエストを送信できます。以下の例では、RestTemplateを使用してGETリクエストを送信しています。
import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;
public class ApiClient {
public static void main(String[] args) {
RestTemplate restTemplate = new RestTemplate();
String url = "http://別のサーバーのURL";
ResponseEntity<String> response = restTemplate.getForEntity(url, String.class);
System.out.println(response.getBody());
}
}
- WebClientを使用する方法: Spring WebFluxモジュールを使用して非同期のHTTPリクエストを送信する場合は、WebClientを使用することができます。以下の例では、WebClientを使用してPOSTリクエストを送信しています。
import org.springframework.http.MediaType;
import org.springframework.web.reactive.function.BodyInserters;
import org.springframework.web.reactive.function.client.WebClient;
public class ApiClient {
public static void main(String[] args) {
WebClient client = WebClient.create();
String url = "http://別のサーバーのURL";
String requestBody = "{\"key\":\"value\"}";
client.post()
.uri(url)
.contentType(MediaType.APPLICATION_JSON)
.body(BodyInserters.fromValue(requestBody))
.retrieve()
.bodyToMono(String.class)
.subscribe(response -> System.out.println(response));
}
}
- Apache HttpClientを使用する方法: Apache HttpClientは、Apacheのライブラリであり、Spring Bootアプリケーションで使用することもできます。以下の例は、Apache HttpClientを使用してGETリクエストを送信する方法を示しています。
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.HttpClientBuilder;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class ApiClient {
public static void main(String[] args) throws IOException {
HttpClient client = HttpClientBuilder.create().build();
String url = "http://別のサーバーのURL";
HttpGet request = new HttpGet(url);
HttpResponse response = client.execute(request);
BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
}
}
これらは一部の一般的な方法ですが、Spring Bootでは他にも多くの方法があります。選択した方法は、アプリケーションの要件や好みに基づいて選択できます。