이전시간에 배운 페이징처리는 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을 생성해주는 작업

config만들어서 사용하기

@Configuration
public class QueryDslConfig {

    @PersistenceContext
    public EntityManager em;

    @Bean
    public JPAQueryFactory queryFactory(){
        return new JPAQueryFactory(em);
    }
}
public interface BoardRepository extends JpaRepository<Board,Long> ,PostRepositoryCustom{
}