diff --git a/src/main/kotlin/busanVibe/busan/domain/place/repository/PlaceLikeRepository.kt b/src/main/kotlin/busanVibe/busan/domain/place/repository/PlaceLikeRepository.kt index 90cd3a9..96c9794 100644 --- a/src/main/kotlin/busanVibe/busan/domain/place/repository/PlaceLikeRepository.kt +++ b/src/main/kotlin/busanVibe/busan/domain/place/repository/PlaceLikeRepository.kt @@ -8,7 +8,14 @@ import org.springframework.data.jpa.repository.Query import org.springframework.data.repository.query.Param interface PlaceLikeRepository: JpaRepository { - fun findAllByPlaceIn(placeList: List): List + + @Query(""" + SELECT pl + FROM PlaceLike pl + JOIN FETCH pl.user + WHERE pl.place IN :placeList + """) + fun findAllByPlaceInFetchUser(@Param("placeList") placeList: List): List @Query("SELECT pl FROM PlaceLike pl WHERE pl.place IN :places") fun findLikeByPlace(@Param("places") placeList: List): List diff --git a/src/main/kotlin/busanVibe/busan/domain/place/service/PlaceQueryService.kt b/src/main/kotlin/busanVibe/busan/domain/place/service/PlaceQueryService.kt index c216cd0..0f022b0 100644 --- a/src/main/kotlin/busanVibe/busan/domain/place/service/PlaceQueryService.kt +++ b/src/main/kotlin/busanVibe/busan/domain/place/service/PlaceQueryService.kt @@ -52,7 +52,7 @@ class PlaceQueryService( val placeIdList: List = placeList.mapNotNull { it.id } // 좋아요 리스트 조회 - val placeLikes: List = placeLikeRepository.findAllByPlaceIn(placeList) + val placeLikes: List = placeLikeRepository.findAllByPlaceInFetchUser(placeList) // 좋아요 수 계산: Map val likeCountMap: Map = placeLikes