인프런 커뮤니티 질문&답변

nwj1016님의 프로필 이미지

작성한 질문수

코드로 배우는 React with 스프링부트 API서버

장바구니 서비스 계층

조회 관련 질문입니다.

24.02.04 12:34 작성

·

250

1

안녕하세요 강의 잘 듣고 있습니다. 강의를 듣다가 의문이 생겨 질문 남깁니다.

 

CartServiceImpl 에서 addOrModify() 를 보면 처음에 cino 가 null 값이 아닌 경우 cartItemRepository.findById 를 하시고, null 값인 경우에는 getCart() 후에 getItemOfPno() 를 하셨습니다.

 

cino 가 null 이면 CartItem 이 존재하지 않는다고 생각되어 다시 getItemOfPno() 를 할 필요가 없다고 생각했는데 위와 같이 코드를 작성하신 이유가 궁급합니다.

 

감사합니다.

 

답변 1

0

구멍가게코딩단님의 프로필 이미지
구멍가게코딩단
지식공유자

2024. 02. 04. 14:38

네.. 말씀하신대로 cino가 null이면 이건 기존 카트에는 없는 상품이 맞습니다. 하지만 리액트쪽에서 잘못해서 cino 없이 동일한 상품의 번호를 전송할 수도 있으니 이를 대비하기 위해서 입니다.

 

카트에 처음으로 추가되는 상품은 cino가 없이 추가하면 되지만, 만일 2곳에서 같은 데이터를 전송한다면 문제가 될 수 있겠다 싶어서요..

 

전통적인 개발 방식과 달리 API서버와 프론트엔드 방식은 개발 주체가 다르기 때문에 좀 더 안전하게 만들어 주는게 좋겠다고 생각했습니다.

nwj1016님의 프로필 이미지
nwj1016
질문자

2024. 02. 04. 15:02

아 네 무슨 말씀이신지 이해했습니다! 휴일인데 답변 주셔서 감사합니다!!

 

이 강의로 많이 배웠습니다. 좋은 강의 만들어주셔서 감사합니다

nwj1016님의 프로필 이미지

작성한 질문수

질문하기