diff --git a/src/main/java/com/inq/wishhair/wesharewishhair/global/config/WebConfig.java b/src/main/java/com/inq/wishhair/wesharewishhair/global/config/WebConfig.java index 67febb3..217c691 100644 --- a/src/main/java/com/inq/wishhair/wesharewishhair/global/config/WebConfig.java +++ b/src/main/java/com/inq/wishhair/wesharewishhair/global/config/WebConfig.java @@ -45,7 +45,8 @@ public void addInterceptors(final InterceptorRegistry registry) { .addExcludePathPattern("/api/users/refresh/*") .addExcludePathPattern("/api/like/test/clean") .addExcludePathPattern("/api/like/test/count/**") - .addExcludePathPattern("/api/email/*"); + .addExcludePathPattern("/api/email/*") + .addExcludePathPattern("/api/reviews/test/**"); registry .addInterceptor(pathMatcherInterceptor) diff --git a/src/main/java/com/inq/wishhair/wesharewishhair/review/presentation/ReviewQueryTestController.java b/src/main/java/com/inq/wishhair/wesharewishhair/review/presentation/ReviewQueryTestController.java index ba368af..b807851 100644 --- a/src/main/java/com/inq/wishhair/wesharewishhair/review/presentation/ReviewQueryTestController.java +++ b/src/main/java/com/inq/wishhair/wesharewishhair/review/presentation/ReviewQueryTestController.java @@ -3,10 +3,12 @@ import java.util.List; import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.inq.wishhair.wesharewishhair.global.dto.response.ResponseWrapper; +import com.inq.wishhair.wesharewishhair.review.application.LikeReviewService; import com.inq.wishhair.wesharewishhair.review.application.dto.response.ReviewResponse; import com.inq.wishhair.wesharewishhair.review.application.dto.response.ReviewResponseAssembler; import com.inq.wishhair.wesharewishhair.review.domain.entity.Review; @@ -21,19 +23,26 @@ public class ReviewQueryTestController { private final ReviewQueryDslRepository reviewQueryDslRepository; + private final LikeReviewService likeReviewService; @Transactional(readOnly = true) + @GetMapping("/join") public ResponseWrapper withJoin() { List reviews = reviewQueryDslRepository.joinWithLikeQuery() .stream() .map(ReviewQueryResponse::getReview) .toList(); + return ReviewResponseAssembler.toWrappedReviewResponse(reviews); } @Transactional(readOnly = true) + @GetMapping("/no_join") public ResponseWrapper withoutJoin() { List reviews = reviewQueryDslRepository.noJoinQuery(); - return ReviewResponseAssembler.toWrappedReviewResponse(reviews); + List reviewIds = reviews.stream().map(Review::getId).toList(); + likeReviewService.getLikeCounts(reviewIds); + + return ReviewResponseAssembler.toWrappedReviewResponse(reviews, reviewIds); } }