1.NaverShopSearch 컴포넌트 등록
컴포넌트 등록이란? 스프링이 필요한 클래스를 자동으로 생성하도록 권한을 주는것.
이제 검색을 main메서드가 아니라 controller에서 가져다 써야 한다.
그럼 스프링이 자동으로 필요한 클래스를 필요한 곳에 생성 해야 할 때
자동으로 생성하려는 클래스 목록이 이것들이구나 확인해야 한다.
그 목록에 등록하는것이 컴포넌트 등록!
@Component //이제부터, @RequiredArgsConstructor 와 함께 사용할 경우 스프링이 자동으로 생성합니다.
public class NaverShopSearch {
솰라솰라
}
2.SerchRequestController 만들기
@RequiredArgsConstructor // final 로 선언된 클래스를 자동으로 생성합니다.
@RestController // JSON으로 응답함을 선언합니다.
public class SearchRequestController {
private final NaverShopSearch naverShopSearch;
@GetMapping("/api/search")
public List<ItemDto> getItems(@RequestParam String query) {
//@RequestParam : url에서 query라는 매개변수를 받아온다. url에 있는 변수명과 반드시 동일해야 함
String resultString = naverShopSearch.search(query); // 검색결과를 받아오고
return naverShopSearch.fromJSONtoItems(resultString); // 원하는 데이터만 추출한 json 들을 목록으로 가져올 수 있게 ArrayList로 바꾼다.
}
}
바로 이걸 위해 컴포넌트를 등록했다. @RequilredArgsConstructor로 기존에 라이브러리로 가져온 클래스들을 자동생성했는데 그 클래스들 목록에 NaverShopSearch를 추가해 준 것이다.
이제 Application 서버를 재시작 하여 ARC로 정상작동 테스트를 해보자
정상 완료쓰~
'나만의 select shop 만들기' 카테고리의 다른 글
상품 검색 기능 만들기 (0) | 2020.12.08 |
---|---|
HTML, Css, 이미지파일 (0) | 2020.12.07 |
키워드로 상품 검색하기 - NaverShopSearch 발전시키기 (0) | 2020.12.07 |
org.json 패키지 설치하기 (0) | 2020.12.06 |
관심 상품 등록하기 (0) | 2020.12.06 |