QueryDSL을 이용한 검색 기능
·
Spring/QueryDSL, JPQL
조건은 다음과 같습니다.검색 조건검색 키워드로 일정의 제목을 검색이 가능해야 한다.제목은 부분적으로 일치해도 검색이 가능해야 한다.일정의 생성일 범위로 검색할 수 있어야 한다.일정을 생성일 최신순으로 정렬이 가능해야 한다.담당자의 닉네임으로도 검색이 가능해요.닉네임은 부분적으로 일치해도 검색이 가능해야한다.다음의 내용을 포함해서 검색 결과를 반환해야한다.일정에 대한 모든 정보가 아닌, 제목만 넣도록 해야 한다.해당 일정의 담당자 카운트가 가능해야 한다.해당 일정의 총 댓글 카운트가 가능해야 한다.검색 결과는 페이징 처리. QueryDSL 구현순서 1. Entity 작성 이미 comment와 user간의 연관관계가 이어져 있기에 추가적으로 수정할 필요는 없었다.package org.example.exper..
QueryDSL
·
Spring/QueryDSL, JPQL
객체 관계 매핑 프레임워크는 Enterprise Java의 핵심입니다. 이는 객체 지향 방식과 관계형 데이터베이스 모델 간의 불일치를 보완합니다. 또한 개발자가 더 깔끔하고 간결한 지속성 코드와 도메인 로직을 작성할 수 있도록 합니다. -QueryDSL 공식 홈페이지중 baeldung의 QueryDSL 목적https://www.baeldung.com/intro-to-querydsl 즉 QueryDSL은 Java 언어로 작성된 쿼리를 위한 타입 안전 쿼리 생성 라이브러리입니다. SQL, JPA, MongoDB 등 다양한 데이터베이스와의 상호작용을 지원하며, 개발자가 보다 직관적이고 안전하게 데이터베이스 쿼리를 작성할 수 있도록 도와줍니다. 주요 특징타입 안전성 QueryDSL은 쿼리의 문법과 데이터 타입을..
JPQL
·
Spring/QueryDSL, JPQL
JPQL (Java Persistence Query Language)은 JPA(Java Persistence API)에서 엔티티 객체를 기반으로 데이터베이스 쿼리를 작성하기 위해 사용되는 쿼리 언어입니다. JPQL은 SQL과 유사하지만, 데이터베이스 테이블이 아닌 엔티티 클래스와 필드를 대상으로 쿼리를 작성한다는 점에서 차이가 있습니다. JPQL의 특징 및 개념 객체 지향 쿼리 언어JPQL은 엔티티 객체를 대상으로 쿼리를 작성합니다. 즉, SQL처럼 테이블을 대상으로 하는 것이 아니라, 클래스와 객체를 대상으로 합니다.SQL에서는 SELECT * FROM users와 같이 테이블을 조회하지만, JPQL에서는 SELECT u FROM User u와 같이 엔티티 객체 User를 대상으로 쿼리를 작성합니다.S..