52일차 셀렉샵만들기, 숙련과제 리뷰

LeeJaewon·2022년 12월 21일
0

문자열 정보를 JSONObject로 바꾸기

JSONObject rjson = new JSONObject(result);

JSONObject에서 items 배열 꺼내기

JSONArray items = rjson.getJSONArray("items");

JSONArray로 for 문 돌기

for (int i=0; i<items.length(); i++) {
	JSONObject itemJson = (JSONObject) items.get(i);
	System.out.println(itemJson);
}

JSONObject에서 String, int 데이터 뽑기

String title = itemJson.getString("title");
int lprice = itemJson.getInt("lprice");

ItemDto 생성하기

@Getter
public class ItemDto {
    private String title;
    private String link;
    private String image;
    private int lprice;

    public ItemDto(JSONObject itemJson) {
        this.title = itemJson.getString("title");
        this.link = itemJson.getString("link");
        this.image = itemJson.getString("image");
        this.lprice = itemJson.getInt("lprice");
    }
}

fromJSONtoItems 메소드 만들기

(NaverShopSearch.java)

키워드로 상품 검색하기 - 네이버 API와 서비스 연결하기

요구 조건

  • 사용자가 검색어를 입력하면 컨트롤러가 그것을 전달 받습니다.
  • 전달받은 검색어로 네이버 API에 요청하고, 그 결과를 사용자에게 응답합니다.

NaverShopSearch 컴포넌트 등록

컴포넌트?

스프링한테 권한을 주는 것.
필요할때 그때끄때 알아서 사용해!
컴포넌트 등록방법
NaverShopSearch에 @Component 달아주기

Front 만들기

파일분리

상품 검색 기능 만들기

  • 검색창 입력값 가져오기
  • 검색창 입력값을 검사하고, 입력하지 않았을 경우 fucus.
  • GET /api/search?query=${query}요청
  • for문 마다 itemDto를 꺼내서 HTML 만들고 검색결과 목록에 붙이기.
  • addHTML 완성하기
  • execSearch, addHTML 완성

지금까지 만든 결과물

검색어를 입력하면 입력한 검색어와 연관된 결과물을 출력해준다.

내일이면 셀렉샵 만들기도 끝날것 같다.

오늘 저녁 7시부터 9시까지는 숙련과제 리뷰 특강이 있었다. 나는 아직 과제를 하지 못해서 눈으로 보기만 했는데 눈으로 보기만 했기 때문에 '이해하고 있다'라는 착각에 빠진것 같다. 얼른 진도를 따라가서 직접 해보고 싶다. 막상 볼 때는 쉽게쉽게 진행이 되니까 어렵지 않다고 생각하는데 직접 해볼때는 뭐부터 시작해야할지 구조잡기조차 어렵다.

profile
한 걸음 한 걸음 꾸준히

0개의 댓글