์ถ์ฒ : github.com/djkeh
dependencies {
implementation "com.querydsl:querydsl-jpa:${dependencyManagement.importedProperties['querydsl.version']}"
// ์๋ ๋ ์ค์ ์ฌํ ๊ธฐ๋ฅ์ด ํ์ํ ๊ฒฝ์ฐ ์ฌ์ฉ
// implementation "com.querydsl:querydsl-core"
// implementation "com.querydsl:querydsl-collections"
annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jpa"
annotationProcessor "jakarta.annotation:jakarta.annotation-api"
annotationProcessor "jakarta.persistence:jakarta.persistence-api"
}
dependencies {
implementation "com.querydsl:querydsl-jpa:${dependencyManagement.importedProperties['querydsl.version']}:jakarta"
// ์๋ ๋ ์ค์ ์ฌํ ๊ธฐ๋ฅ์ด ํ์ํ ๊ฒฝ์ฐ ์ฌ์ฉ
// implementation "com.querydsl:querydsl-core"
// implementation "com.querydsl:querydsl-collections"
annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jakarta"
annotationProcessor "jakarta.annotation:jakarta.annotation-api"
annotationProcessor "jakarta.persistence:jakarta.persistence-api"
}
build.gradle ํ์ผ์ ๋๋ถ๋ถ์ ์ถ๊ฐํด์ฃผ๋ฉด ๋๋ค.
๋์ ํ์ธ : spring boot 2.7.14 , 3.0.7
+ ์ต์ํด์ง qclass ์์น 'build/generated/querydsl'
+ h2 ์๋ฒ ๋ ์์น 'build/generated/h2'
// q ํด๋์ค ์์น ์ง์ ์ ์ํ ์ค์
def generated = 'build/generated/querydsl'
// def generated = 'src/main/generated'
tasks.withType(JavaCompile).configureEach {
options.getGeneratedSourceOutputDirectory().set(file(generated))
}
sourceSets {
main.java.srcDirs += [ generated ]
}
clean {
delete file(generated)
}
์์ ์์ฑ๋ ๋ฒ์ ๊ณตํต ์ค์ ์ ์์ฑํด์ฃผ์ง ์์๋ ์คํ์ด ์ ๋๋ค.
QClass ์์ฑ ๊ด๋ฆฌ ์์น๋ฅผ ์ง์ ํด์ฃผ๋ ์ฝ๋์ด๊ธฐ ๋๋ฌธ์ด๋ค.
๋ฒ์ ๊ณตํต ์ค์ ์ฝ๋๋ฅผ ์์ฑํ์ง ์์ผ๋ฉด Qํด๋์ค ํ์ผ์
build - generated - sources - annotationProcessor - java - main - ํ๋ก์ ํธ.entity
์์น์ ์์ฑ๋๋ค.
๋ฒ์ ๊ณตํต ์ค์ ์ฝ๋๋ฅผ ์์ฑํด์ค๋ค๋ฉด
src - main - generated - ํ๋ก์ ํธ.entity
์์น์ ์์ฑ๋๋ค.
๋ค๋ง,
Qํด๋์ค ์์น๋ฅผ src/main/generated
๋ก ํ๋ค๋ฉด,
.gitignore
์ ํด๋น ์์น๋ฅผ ์์ฑํด์ฃผ์ด ๊ด๋ฆฌํด์ผํ๋ค.
build ํด๋์ ์์ฑ๋๊ฒ ํ๋ฉด
์ด๋ฏธ .gitignore์ ๋ฑ๋ก๋์ด์๊ธฐ ๋๋ฌธ์ git์ ์ ๋ก๋ ๋์ง ์๊ฒ ์ง๋ง
src ํด๋์ ์์ฑ๋๊ฒ ํ๋ฉด git์ ์ ๋ก๋ ํ๋ ค๊ณ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
Qํด๋์ค๋ ํ๋ ์์ํฌ๊ฐ ๊ด๋ฆฌํ๋ ,
์ฆ์ ๋ณ๊ฒฝ์ด ๋ฐ์ํ๋ ํ์ผ์ด๊ธฐ ๋๋ฌธ์ git์ ์ฌ๋ฆฌ์ง ์๋๊ฒ ์ข๋ค.
ํ์ง๋ง ๊ฒฝ์ฐ์ ๋ฐ๋ผ์ Qํด๋์ค๋ฅผ Git์ ์ ๋ก๋ํ์ฌ ํจ๊ป ๊ด๋ฆฌํ๋ ์กฐ์ง๋ ์๋ค๊ณ ํ๋ค!
์ญ์ ๋ชจ๋ ๊ฒ์ ์ผ๋ฐ์ผ ๐คจ
๋๋ฅผ ์ํ ๊ฒ์์ด
์ฟผ๋ฆฌ , ๋์์ค์ , ๋์์
, query , qclass , dsl , querydsl , query dsl ,