표준 라이브러리만으로 Java에서 Google에 쿼리하세요. serp.cheap을 사용합니다 — 또는 공식 Java SDK(Spring Boot 통합 포함)를 그대로 넣어도 됩니다. 어느 쪽이든 단순한 HTTP+JSON 엔드포인트입니다.
먼저 curl로 간단히 확인해 봅시다:
curl -X POST https://api.serp.cheap/v1/search \
-H "X-API-Key: $SERP_CHEAP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"q":"best electric cars 2026","gl":"us"}'
전체 예제
파일 하나, Java 17+에서 실행 가능하며 요청에는 java.net.http, JSON에는 Jackson(com.fasterxml.jackson.core:jackson-databind)을 사용합니다. 먼저 SERP_CHEAP_API_KEY를 설정하세요.
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.List;
public class SerpSearch {
static final ObjectMapper M = new ObjectMapper();
@JsonIgnoreProperties(ignoreUnknown = true)
record Organic(int position, String title, String link, String snippet) {}
@JsonIgnoreProperties(ignoreUnknown = true)
record SearchResponse(List<Organic> organic) {}
public static void main(String[] args) throws Exception {
String key = System.getenv("SERP_CHEAP_API_KEY");
String body = M.writeValueAsString(new java.util.HashMap<>() {{
put("q", "best electric cars 2026");
put("gl", "us");
}});
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create("https://api.serp.cheap/v1/search"))
.header("X-API-Key", key)
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
HttpResponse<String> res = HttpClient.newHttpClient()
.send(req, HttpResponse.BodyHandlers.ofString());
SearchResponse data = M.readValue(res.body(), SearchResponse.class);
for (Organic r : data.organic()) {
System.out.printf("%2d. %s%n %s%n", r.position(), r.title(), r.link());
}
}
}
record는 JSON을 깔끔하게 매핑하며, @JsonIgnoreProperties(ignoreUnknown = true) 덕분에 응답에 새 필드가 생겨도 빌드가 깨지지 않습니다.
Spring Boot
Spring 앱에서는 동일한 호출을 RestClient(Spring 6.1+)를 사용해 @Service로 감싸면 됩니다:
@Service
public class SerpClient {
private final RestClient http = RestClient.builder()
.baseUrl("https://api.serp.cheap")
.defaultHeader("X-API-Key", System.getenv("SERP_CHEAP_API_KEY"))
.build();
public SearchResponse search(String q, String gl) {
return http.post().uri("/v1/search")
.body(java.util.Map.of("q", q, "gl", gl))
.retrieve()
.body(SearchResponse.class);
}
}
공식 Java SDK는 이 배선에 더해 재시도, 페이지네이션, 타입이 지정된 매개변수까지 Spring Boot 스타터로 제공하므로, SerpClient를 주입해서 바로 시작할 수 있습니다.
알아두면 좋은 매개변수
gl— 결과 국가(us,de,br, …). 국가별 로컬 SEO를 참고하세요.hl— 인터페이스 언어.page— 1부터 시작하며, 각 페이지는 별도의 요청입니다. 페이지네이션을 참고하세요.tbs— 시간 필터(qdr:d= 지난 하루). 전체 매개변수 레퍼런스를 참고하세요.
다음
serp.cheap 사용해 보기
위 파일을 복사하고 키를 추가하면 Java에서 실시간 Google 결과를 얻을 수 있습니다. 가입 시 무료 검색 100회 — 카드가 필요 없습니다. 이후에는 $0.75/1k부터 사용한 만큼 지불하며, 크레딧은 12개월간 유효합니다.
- 무료 API 키 받기 →
- 카드로 결제하는 것이 편하신가요? serp.cheap은 RapidAPI(
$0.90/1k)와 Apify($1.50/1k)에서도 이용할 수 있습니다.