• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

프로젝션된 DTO의 필드 값으로 정렬이 가능할까요?

24.01.17 13:56 작성 조회수 148

0

data class ShopSimpleResponse(
    val id: Long,
    val image: String,
    val name: String,
    val address: String,
    val introduce: String,
    val minPrice: Int,
    val checkCoupon: Boolean,
) {
    constructor(shop: Shop) : this(
        id = shop.id,
        image = shop.images[0].imgUrl,
        name = shop.name,
        address = shop.address,
        introduce = shop.introduce,
        minPrice = shop.products.minByOrNull { it.price }?.price ?: 0,
        checkCoupon = true
    )
}

코틀린 코드인 점 죄송합니다!

해당 DTO를 프로젝션해서 DB에서 바로 Page<ShopSimpleResponse> 로 반환하고 싶은데
아무리 찾아봐도 방법을 찾기 못했습니다....
querydsl내에서나 @Query 를 사용해서 구현하는 방법이 있는지 궁금합니다.

해당 부분을 엔티티의 필드 값으로 바꾸는 것도 고려하고 있는데, 우선 이 상태에서 해결 가능한 방법이 있는지 궁금합니다!

답변 1

답변을 작성해보세요.

0

David님의 프로필

David

2024.01.17

안녕하세요. 789456jang님, 공식 서포터즈 David입니다.

Querydsl projection paging으로 검색하면 원하시는 것들을 찾을 수 있으실 것 같습니다.

아래 글도 참고해 주세요:)

https://velog.io/@hyunho058/JPA

감사합니다.