Map을 사용해 메인 이미지에 나타낸 imgVO의 originFileName.
이전 까지 사용했던 상품 관리 상세조회이다. 쿼리를 두개 리턴시켜줘야하는데, 자료형 List에서는 그걸 할 수 가 없기 때문에, Map으로 바꿔서 리턴시켜줘야한다. 그래서 갈아엎고 다시 만들어보았다.
AdminController 컨트롤러
컨트롤러에서 먼저 조회된 쿼리 두개 모두 cateList , item 이라는 변수로 만들어준다.
cateList는 여러 줄로 조회된 데이터를 가지고 오므로 자료형이 List<> 로 채워지고,
상품 상세 정보 쿼리는 item으로 itemCode 의 문자열 데이터를 가져와 쿼리에서 ItemVO 정보를 조회한다.
자료형 Map은 Map(key, value) 로 채워질 수 있는데, key 값으로 String, value 값으로 Object가 들어왔다.
Object는 모든 자료형의 부모 클래스로 String이든 List 자료형이든 상속시켜줄 수 있기 때문에 들어올 수 있다.
만약 두 자료형이 String, List로 모두 같으면 똑같이 주면 된다.
item_manage.js
js파일로 들어오면서 result의 값을 가져올 수 있다. Map에서는 List로 접근할 때 ['item']과 같이 접근해주었다. 이렇게 카테고리가 생긴 것을 확인할 수 있다.
그리고 위 코드에서 selected 를 추가해주면, 선택한 상품의 카테고리를 알맞게 가지고 올 수 있다.
추가적으로 result['item].itemPrice와 같이 value 값을 조정해주면 이렇게 선택한 상품명의 모든 정보를 가져와줄 수 있다.
result['item'] 여기까지가 itemVO의 데이터를 가르키고,
imgList 한덩이 한덩이가 모두 imgVO이다. result['item'] .imgList[0] -- imgVO 된다.
따라서 result에서 받아온 Map으로 접근해서, itemVO의 안에 imgVO에 있는 isMain 값이 Y 인것만 출력하게 된다.
'✨ Back-end > Spring-Boot' 카테고리의 다른 글
[Spring] 쇼핑몰 - 26 상품 정보 수정하기(UPDATE) (0) | 2023.04.03 |
---|---|
[Spring] 쇼핑몰 - 25 상품 정보 이미지(IMG) 띄우기 (0) | 2023.04.03 |
[Spring] 쇼핑몰 - 23 등록된 상품 수정 (0) | 2023.03.31 |
[Spring] 쇼핑몰 - 22 등록된 상품 관리 조회(SELECT) (0) | 2023.03.30 |
[Spring] 쇼핑몰 - 21 상품 이미지 등록 쿼리 (0) | 2023.03.30 |
댓글