본문 바로가기
IT/Java

Apache HttpClient 와 CloseableHttpClient 차이점 +(DefaultHttpClient / HttpClientBuilder)

by 성준하이 2024. 5. 1.
반응형

우선 HttpClient 란 HTTP 메서드를 실행하는것이 주 목적이다.

일반적으로는 HttpClient에 의해 내부적으로 처리된다.

 

여기서 만들어진것이 CloseableHttpClient 이다.

CloseableHttpClient는 HttpClient의 기본 구현인 추상 클래스이고, 아래 코드는 간단한 예제 이다.

CloseableHttpClient httpclient = HttpClients.createDefault();
HttpGet httpget = new HttpGet("http://localhost/");
CloseableHttpResponse response = httpclient.execute(httpget);
try {
    //code
} finally {
    response.close();
}

 

finally 부분에 나와있는것처럼 HttpClient 리소스 할당 해제를 반드시 해야한다.

 

CloseableHttpClient 에 대해서는 baeldung 에서도 다루고 있으니 아래 글을 참고해도 도움되는 예제를 얻을수가 있다.

https://www.baeldung.com/apache-httpclient-vs-closeablehttpclient

 

그리고 이제 더 나아가 DefaultHttpClient라는것이 있다.

CloseableHttpClient 와 동일하게 HttpClient의 구현 클래스이지만 현재는 잘 사용되지는 않는다.

HttpClientBuilder를 대신해서 많이 사용이 되긴한다.

 

결론은 HttpClient 를 사용하기 위해 CloseableHttpClient를 사용할순 있고,

사용을 하면 반드시 할당 해제를 같이 해야한다는것으로 마무리 한다.

반응형

'IT > Java' 카테고리의 다른 글

Spring Cloud에 대해  (15) 2024.05.05
RestTemplate 에 대해서  (21) 2024.05.03
줄바꿈 하기 (\n, \r, \r\n 의 차이) / System.lineSeparator()  (31) 2024.04.30
Workbook 사용법  (20) 2024.04.28
openfeign에서 header에 값 추가  (21) 2024.04.24

댓글