이전시간에 배운 페이징처리는 SpringJPA를 활용할때, 사용이 가능합니다.
해당 방법도 좋지만 직접 페이징객체를 제작하여 쿼리DSL을 사용하여 쿼리를 만들어보는 방법
→ 강사님도 추천하는 방법 허허
implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta'
annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jakarta"
annotationProcessor "jakarta.annotation:jakarta.annotation-api"
annotationProcessor "jakarta.persistence:jakarta.persistence-api"
def querydslDir = "$buildDir/generated/querydsl"
sourceSets {
main.java.srcDirs += [ querydslDir ]
}
tasks.withType(JavaCompile).configureEach {
options.annotationProcessorGeneratedSourcesDirectory = file(querydslDir)
}
clean.doLast {
file(querydslDir).deleteDir()
}
build→ classes를 활용하여 queryDSL을 생성해주는 작업
@Configuration
public class QueryDslConfig {
@PersistenceContext
public EntityManager em;
@Bean
public JPAQueryFactory queryFactory(){
return new JPAQueryFactory(em);
}
}
public interface BoardRepository extends JpaRepository<Board,Long> ,PostRepositoryCustom{
}