Repository와 API 분리2
Last updated
Last updated
패키지의 목적과 용도에 따라 구분한다! OrderRepository : (핵심비즈니스)Order 엔티티 조회용⭐️
"query" : (핵심비즈니스X)화면이나 API에 의존적인 것들은 따로 패키지를 만들어서 처리한다! 핵심 비즈니스를 처리하는 라이프 사이클과 화면/API 관련 라이프 사이클은 다르기 때문이다!
OrderQueryRepository, OrderDTO, OrderItemDTO 클래스 생성 OrderDTO만 만들어도 될텐데 Order에는 일대다 관계의 컬렉션이 있기 때문에 컬렉션은 select절에서 new 연산자 바로 사용❌ 그렇기 때문에 컬렉션 조회 쿼리작성은 따로 처리해줘야 하기 때문에 OrderItem 컬렉션에 대한 DTO도 따로 생성.