일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- producer
- mysql
- Streams
- mirror maker2
- topic생성
- CI
- cd
- spring
- kafka
- transactionaleventlistener
- git
- Kubernetes
- centos7
- Spring JPA
- K8s
- bean
- consumer
- spring kafka
- offsetdatetime
- AWS
- Kotlin
- API
- Spring Data JPA
- Entity
- JPA
- entity graph
- CodePipeline
- PAGING
- QueryDSL
- ECS
- Today
- Total
목록QueryDSL (2)
Yebali

데이터 베이스는 다양한 테이블에 데이터를 나누어 담는다. 우리는 필요에 따라 각 테이블에 있는 데이터를 조합하여 하나의 데이터 셋으로 만들어야 하는 경우가 빈번히 있다. Join의 종류와 해당 Join방법들을 QueryDsl을 이용해 구현하는 방법을 알아보자. Entity 예시 Entity는 'Team'과 'Member'를 사용할 것이며, 1:N 관계이다. @Entity class Team ( @Id @GeneratedValue(strategy = GenerationType.IDENTITY) val id: Long, val name: String, @OneToMany(mappedBy = "team") val members: MutableList = mutableListOf(), ) @Entity clas..

QueryDSL이란? 기존 JPA Criterial는 코드로 JPQL을 작성하므로 문법 오류를 컴파일 단계에서 잡을 수 있고 IDE 자동완성 기느의 도움을 받을 수 있는 등 여러 가지 장점이 있다. 하지만 너무 복잡하고 어렵다. 쿼리를 문자가 아닌 코드로 작성해도 쉽고 간결하며 그 모양도 쿼리와 비슷하게 개발 할 수 있는 프로젝트가 바로 QueryDSL이다. QueryDSL 설정 build.gradle.kts에 아래 설정을 추가해준다. Version은 개발자가 원하는 버전을 선택한다. plugins { kotlin("kapt") version "1.4.32" } dependencies { val querydslVersion = "4.4.0" //== QueryDSL ==// implementation("..