[java] Apache HttpClient를 사용하여 웹 페이지에서 이미지 가져오는 방법은?

먼저, HttpClient 라이브러리를 프로젝트에 추가해야 합니다. Maven을 사용하는 경우, pom.xml 파일에 다음 의존성을 추가합니다.

<dependencies>
    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>4.5.12</version>
    </dependency>
</dependencies>

이제 Java 코드에서 HttpClient를 사용하여 이미지를 가져올 수 있습니다. 다음은 예시 코드입니다.

import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

import java.io.FileOutputStream;
import java.io.IOException;

public class ImageDownloader {
    public static void main(String[] args) {
        HttpClient httpClient = HttpClients.createDefault();

        String imageUrl = "http://example.com/image.jpg";
        HttpGet httpGet = new HttpGet(imageUrl);

        try {
            HttpResponse response = httpClient.execute(httpGet);
            HttpEntity entity = response.getEntity();
            byte[] imageBytes = EntityUtils.toByteArray(entity);

            // 이미지를 파일로 저장
            FileOutputStream outputStream = new FileOutputStream("image.jpg");
            outputStream.write(imageBytes);
            outputStream.close();

            System.out.println("이미지를 성공적으로 다운로드했습니다.");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위의 예시 코드에서는 HttpClient를 사용하여 이미지 URL에서 이미지를 다운로드하고, 이를 파일로 저장합니다. http://example.com/image.jpg 부분을 실제 이미지 URL로 바꾸어야 합니다. 이미지를 원하는 위치에 저장하기 위해 파일 경로를 수정할 수도 있습니다.

이 예시 코드는 단일 이미지를 다운로드하는 방법을 보여주지만, 여러 이미지를 다운로드하려면 반복문 등을 사용하여 여러 개의 요청을 보내고 로컬 파일에 저장하면 됩니다.

이 코드를 실행하면 Apache HttpClient를 사용하여 웹 페이지에서 이미지를 성공적으로 가져와서 로컬에 저장할 수 있습니다.