반응형
네이버 API 서비스 연결
요구사항
- 사용자가 검색어를 입력하면, 컨트롤러가 그것을 전달받습니다.
- 전달받은 검색어로 네이버 API에 요청하고, 그 결과를 사용자에게 응답합니다.
NaverShopSearch 컴포넌트 등록하기
- 검색을 main 메소드에서 진행하는게 아니라, Controller 에서 가져다 써야 한다.
- 스프링이 자동으로 필요한 클래스를 필요한 곳에 생성하려면, 컴포넌트 등록을 해야한다.
- 컴포넌트는 사용자가 요구하면 자동으로 생성할 클래스 목록 이라고 이해할 수 있다.
@Component // @RequiredArgsConstructor 와 함께 사용될 경우 스프링이 자동으로 생성한다.
public class NaverShopSearch {
SearchRequestController 생성
@RequiredArgsConstructor // final 로 선언된 클래스를 자동으로 생성
@RestController // JSON으로 응답함을 선언.
public class SearchRequestController {
private final NaverShopSearch naverShopSearch;
@GetMapping("/api/search")
public List<ItemDto> getItems(@RequestParam String query) {
String resultString = naverShopSearch.search(query);
return naverShopSearch.fromJSONtoItems(resultString);
}
}
현재 디렉토리 구조
ARC로 테스트
반응형
'스프링 (Spring) > SelectShop Project' 카테고리의 다른 글
Selectshop - 상품검색기능 (0) | 2021.08.03 |
---|---|
SelectShop - HTML 구성 (0) | 2021.08.03 |
SelectShop - 키워드로 상품 검색하기 1 (0) | 2021.08.03 |
SelectShop - 관심상품 등록하기 (0) | 2021.08.02 |
SelectShop - 관심상품 조회하기 (0) | 2021.08.02 |
댓글