QueryDsl이란? Querydsl은 JPA 기반의 데이터베이스 조회 및 조작을 위한 라이브러리입니다. 복잡한 쿼리(ex 동적 쿼리)를 더 쉬운 작성을 도와줍니다. CustomRepository CustomRepository 인터페이스는 Querydsl을 사용하여 데이터베이스 작업을 수행하는 데 도움을 주는 방법 중 하나입니다. @Repository interface MenuRepository: JpaRepository, CustomMenuRepository interface CustomMenuRepository { fun findByCafeId(cafeId: Long) } class CustomMenuRepositoryImpl: CustomMenuRepository { override fun find..
저는 querydsl을 실무에서 주로 사용하고 있습니다. 제대로 알고 사용하고 있는지 점검할 겸, JPQL과 QueryDsl의 차이점을 정리해보는 시간을 가졌습니다. 먼저, JPQL과 QueryDsl이 무엇인지 가볍게 알아보겠습니다. JPQL이란? JPQL(Java Persistence Query Language)은 엔티티 객체를 조회하는 객체 지향 쿼리 언어입니다. JPQL은 SQL과는 다르게 엔티티 객체를 대상으로 쿼리를 작성하며, 데이터베이스의 특정 열에 대한 쿼리는 지원하지 않습니다. JPQL은 엔티티 객체의 속성을 사용하여 쿼리를 작성하며, 결과는 엔티티 객체의 컬렉션으로 반환됩니다. JPQL은 JPA(Java Persistence API)의 일부이며, JPA 구현체에서 지원됩니다. QueryD..
영속성 컨텍스트란? 영속성 컨텍스트는 엔티티를 영구 저장하는 환경을 의미합니다. 엔티티에 대한 설명은 다음 포스팅을 참고해주세요. 엔티티의 정의와 생명주기(lifecycle) 엔티티의 정의 엔티티는 사전적 정의로 개체, 실재라는 뜻을 가집니다. JPA에서는 가볍게 데이터 모델링에서 사용되는 객체라고 생각하시면 됩니다. 코드를 가볍게 살펴봅시다. import lombok.AccessLe kkoon9.tistory.com 영속성 컨텍스트를 쓰는 이유는 1차 캐시, 동일성 보장, 트랜잭션을 지원하는 쓰기 지연, 변경감지(Dirty checking), 지연로딩이 있습니다. 1차 캐시 영속성 컨텍스트 내부에 캐시를 1차 캐시라고 합니다. 영속 상태의 엔티티는 모두 1차 캐시에 저장이 됩니다. Id 어노테이션을 매..
엔티티의 정의 엔티티는 사전적 정의로 개체, 실재라는 뜻을 가집니다. JPA에서는 가볍게 데이터 모델링에서 사용되는 객체라고 생각하시면 됩니다. 코드를 가볍게 살펴봅시다. import lombok.AccessLevel; import lombok.Getter; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import java.time.Duration; @Getter @Entity @NoArgsConstructor(access = Acces..
- Total
- Today
- Yesterday
- 프로그래머스
- 테라폼
- JPA
- Olympiad
- 코테
- BAEKJOON
- Algorithm
- Effective Java
- programmers
- 디자인 패턴
- 이펙티브 자바
- 클린 아키텍처
- 객체지향
- Java
- 정규표현식
- node.js
- 백준
- MSA
- 알고리즘
- Spring Boot
- C++
- AWS
- Spring
- kotest
- kkoon9
- 디자인패턴
- Kotlin
- BOJ
- 이팩티브 자바
- 클린 코드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |