본문 바로가기

queryDSL2

[QueryDSL] QueryDSL이란? QueryDSL이란? 우선, DSL은 Domain Specific Language의 줄임말이다. 뜻은 특정 영역에 특화된 언어이다. 그렇기 때문에 QueryDSL은 쿼리 생성에 특화된 프레임워크이다. 우리가 QueryDSL를 사용하면 좋은 점이 무엇이 있을까? 그것에 관한 설명을 하기 전에 JPA와 JPQL에 관한 문제점에 대해 잠깐 알아보자. JPA JPA는 객체지향 어플리케이션과 RDBMS 사이의 패러다임 불일치를 해결해주는 역할을 하는 프레임워크이다. JPA 덕분에 우리는 객체지향 관점으로 개발할 수 있게 되고 JPA 프레임워크는 자동으로 SQL 쿼리문을 생성해준다. SQL문이 JPA에 의해 자동으로 생성되기에 개발자는 SQL 관점에서 프로그래밍을 하지 않아도 된다. 하지만, 그렇다하더라도 완전한 .. 2024. 3. 30.
Spring Pagination 연습 이번 포스팅에는 Spring Pagination에 대해 다뤄 볼 것이다. 구글, 네이버 카페, 커뮤니티 등 어떤 웹에서도 페이징 처리가 된 웹 형태를 자주 찾아볼 수 있다. 그렇다면 이렇게 페이징 처리하는 이유가 뭘까? 수많은 데이터가 DB에 존재한다고 했을 때, 페이징 처리를 하지 않고 모든 데이터들을 한 번에 뿌려준다면 해당 데이터들을 DB로부터 가져오는데 엄청난 시간이 소요될 것이다. 또한, 해당 데이터 자체를 들고 있어야 하기에 메모리에도 부담이 클 것이다. 하물며 사용자들이 그 수많은 데이터들을 다 보게 하는 것도 용이하지 못하다. 그래서, 모든 데이터들의 개수에 대한 기준을 만들어 해당 개수만큼 가져오는 페이징 형태를 사용하는 것이다. 페이징 처리를 적절히 활용하여 정렬 기준과 정렬 방식(오름.. 2024. 3. 8.