Skip to content

querydsl-ktxQueryDSL을 위한 Null-safe Kotlin 확장

BooleanBuilder와 if 검사 없이 동적 쿼리 작성

이전 vs 이후

kotlin
val builder = BooleanBuilder()
if (name != null) {
    builder.and(member.name.contains(name))
}
if (status != null) {
    builder.and(member.status.eq(status))
}
return queryFactory
    .selectFrom(member)
    .where(builder)
    .fetch()
kotlin
return selectFrom(member)
    .where(
        member.name contains name,
        member.status eq status,
    )
    .fetch()