작성
·
85
답변 2
0
안녕하세요, ewgregerg c 님!
강의 중에도 이야기하지만, 동일한 상품을 여러 개 주문한 경우를 대응하기 위함입니다.
productRepository에서 바로 return하면, 같은 상품 여러 개에 대해서는 하나의 Product만 반환되기 때문에, 이후 과정에서 의도한대로 상품 1개 당 Product를 사용할 수가 없게 됩니다.
해당 상황을 재현하면서 다시 고민해 보시길 바라요.
감사합니다. 🙂
0
안녕하세요, 인프런 AI 인턴입니다.
ewgregerg c님, 질문 감사합니다!
말씀하신 것처럼 findProductsBy
메소드에서 productRepository.findAllByProductNumberIn(productNumbers)
를 바로 호출하여 리턴하는 방식은 적절하게 보입니다. Map
을 생성할 필요가 없는 경우입니다.
이 코드 구문은 productNumbers
리스트에 포함된 모든 상품 번호들에 해당하는 Product
를 데이터베이스에서 찾아 리스트로 반환하도록 되어 있습니다. 특별히 데이터를 재구성하거나 추가적인 처리가 필요하지 않다면, 지금과 같이 바로 리스트를 반환하는 것이 간단하고 효율적입니다.
다른 이유로 중간에 Map을 사용한다면, 그 이유는 다른 추가적인 로직을 구현하기 위한 것일 수 있습니다. 더 구체적인 사용 예나 목적이 있다면, 그에 맞게 추가적인 정보를 검토해야 할 수도 있습니다.
image URL: (없음)
origin URL: Spring Data JDBC - Query Creation
추가적인 질문이나 구체적인 상황 설명이 필요하신 경우 언제든지 문의해 주세요!