inflearn logo
๊ฐ•์˜

Course

Instructor

Real-world! Spring Boot and JPA Utilization 2 - API Development and Performance Optimization

Introducing QueryDSL

querydsl ์‚ฌ์šฉ์งˆ๋ฌธ

744

Yong D

22 asked

0

๊ฐœ๋ฐœ์ž๋‹˜

Querydsl ์„ ์ด์šฉํ•ด ํ…Œ์ŠคํŠธ ํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ 

QWebBoard ๋นˆ์„ ์ฐพ์„์ˆ˜ ์—†๋‹ค๊ณ  ์˜ค๋ฅ˜๊ฐ€ ๋‚ฉ๋‹ˆ๋‹ค

๊ทธ๋ž˜์„œ generated ํด๋”๋ฅผ ํŒจ์Šค์— ์ถ”๊ฐ€ ์•ˆํ•ด์„œ ๊ทธ๋Ÿฐ๊ฐ€ ํ•ด์„œ 

build.gradle์— ์„ค์ •์„ ๋ดค๋Š”๋ฐ ์ด๋ฏธ ์„ค์ •ํ•œ ์ƒํ™ฉ์ด์—ˆ์Šต๋‹ˆ๋‹ค

๊ตฌ๊ธ€๋งํ•ด๋„ ํ•ด๊ฒฐ๋ฒ•์ด ์•ˆ๋‚˜์™€์„œ ์งˆ๋ฌธํ•ฉ๋‹ˆ๋‹ค

//QWebBoard๋ฅผ   src/main/java  ํด๋” ์•„๋ž˜์— ์˜ฎ๊ธฐ์— ๋ฉด
ํ…Œ์ŠคํŠธ๊ฐ€ ์„ฑ๊ณตํ•˜๊ธด ํ•ฉ๋‹ˆ๋‹ค

spring-boot java JPA spring

Answer 12

3

yh

์•ˆ๋…•ํ•˜์„ธ์š” Yong D๋‹˜

ํ™œ์šฉ2ํŽธ๋งŒ ๋”ฐ๋กœ ๋“ฃ๋Š” ๋ถ„์„ ์œ„ํ•ด ์—”ํ‹ฐํ‹ฐ ๊ด€๋ จ ์ฝ”๋“œ๋ฅผ ์ œ๊ณตํ•ด๋“œ๋ฆฌ๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค.

0. ๊ฐ•์ขŒ์†Œ๊ฐœ์— 2ํŽธ ์ถ”๊ฐ€ ์ž๋ฃŒ๋ฅผ ์˜ฌ๋ ค๋‘์—ˆ์Šต๋‹ˆ๋‹ค^^

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

1

myoung-sook lee

vscode ์—์„œ๋Š” .\gradlew build ๋ฅผ ์ง์ ‘ํ•ด์ฃผ์…”์•ผ Qํด๋ž˜์Šค๊ฐ€ ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค. 

0

Yong D

๐Ÿ˜๐Ÿ˜๐Ÿ˜

0

yh

Yong D๋‹˜ ํ™œ์šฉ1ํŽธ๋„ ๋”ฐ๋ผํ•˜๊ธฐ์—ฌ์„œ ์†Œ์Šค์ฝ”๋“œ๊ฐ€ ์ œ๊ณต๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค^^!

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค

0

Yong D

๊ทธ๋ ‡๊ตฐ์š” ใ… ใ… 

์•„๋ฌดํŠผ ํ™ฉ๊ธˆ๊ฐ™์€ ์ฃผ๋ง์— ์‹œ๊ฐ„๋‚ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค


๊ทผ๋ฐ ํ˜น์‹œ ์‹ค์ „! ์Šคํ”„๋ง ๋ถ€ํŠธ์™€ JPA ํ™œ์šฉ1  ์†Œ์Šค์ฝ”๋“œ๋Š” ์—†๋‚˜์š”??

"์‹ค์ „! ์Šคํ”„๋ง ๋ถ€ํŠธ์™€ JPA ํ™œ์šฉ2" ๋งŒ ๊ตฌ๋งคํ›„ ๊ฐ•์˜๋ฅผ ๋ณด๋Š”๋ฐ 

"์‹ค์ „! ์Šคํ”„๋ง ๋ถ€ํŠธ์™€ JPA ํ™œ์šฉ1" ์˜ ์†Œ์Šค์ฝ”๋“œ ๊ฐ€ ๊ทธ๋Œ€๋กœ ์ด์–ด์ ธ์„œ ๋‚œ๊ฐํ•˜๋„ค์š” ๐Ÿ˜…

0

yh

์•ˆ๋…•ํ•˜์„ธ์š”^^! ์ฒœ์šฉ์ƒ๋‹˜ vscode๋ฅผ ์“ฐ์‹œ๋Š”๊ตฐ์š”!

์•„์‰ฝ์ง€๋งŒ ์ œ๊ฐ€ vscode๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„์„œ, intellij์—์„œ ๋™์ž‘ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๊ฒ€์ฆํ•˜๊ณ  ๋ฉ”์ผ๋กœ ๋ณด๋‚ด๋“œ๋ฆฝ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ vscode๋Š” ์ž๋ฐ” ์„œ๋ฒ„ ๊ฐœ๋ฐœ์ž๋ถ„๋“ค๊ป˜๋Š” ์•„์ง์€ ๋„ˆ๋ฌด ๋งˆ์ด๋„ˆํ•ด์„œ ๊ฐ€๋Šฅํ•œ ๋ฐฉ๋ฒ• ์Šค์Šค๋กœ ์ฐพ์œผ์…”์•ผ ํ•  ๊ฒƒ ๊ฐ™์•„์š” ใ… ใ… 

querydsl์ด ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ์†Œ์Šคํด๋”๋„ ์ž„ํฌํŠธ ํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์ƒ๊ฐ๋ณด๋‹ค ๋ผ์ดํ”„์‚ฌ์ดํด์ด ๋ณต์žกํ•ด์„œ Intellij์—์„œ๋„ ๊ฐ€๋” ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์žฌ Intellij ๊ถŒ์žฅ ๋ฒ„์ „์€ 2019.2.4์ž…๋‹ˆ๋‹ค. (๋ช‡์ผ์ „์— ์ถœ์‹œ๋œ 2019.3์€ ๋ฒ„๊ทธ๋•Œ๋ฌธ์— ์ •์ƒ ๋™์ž‘ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.)

์ฝ˜์†”์—์„œ ์‹คํ–‰์€ ./gradlew clean buildโ€‹ ๋กœ ํ•ด๋ณด์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

0

Yong D

์ €๋Š” intellij ๋ฅผ ์“ฐ์ง„ ์•Š๊ณ  vscode๋กœ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค
์ด๊ฒŒ ๋ฌธ์ œ ๋ ๊ฑฐ ๊ฐ™์ง€ ์•Š์•„์„œ ๋ง์”€์•ˆ๋“œ๋ ธ๋Š”๋ฐ ๋งํ–ˆ์–ด์•ผ ํ–ˆ๋‚˜์š”..

0

yh

Yong D๋‹˜ ํ˜น์‹œ Intellij ๋ฒ„์ „์ด ์ •ํ™•ํ•˜๊ฒŒ ์–ด๋–ป๊ฒŒ ๋˜๋Š”์ง€์š”?

0

Yong D

๊ฐœ๋ฐœ์ž๋‹˜ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค ๐Ÿ˜€

0

yh

์ „์ฒด ํ”„๋กœ์ ํŠธ๋ฅผ ์••์ถ•ํ•ด์„œ ์˜ฌ๋ ค์ฃผ์„ธ์š”.

0

Yong D

์ฃผ๋ง์ธ๋ฐ๋„ ๋น ๋ฅธ๋‹ต๋ณ€ ์ •๋ง ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค

๊ฐ•์˜์ž๋ฃŒ ๋ฅผ ์ฐธ๊ณ ํ•ด์„œ ๋‹ค์‹œ ํ•ด๋ดค์ง€๋งŒ  ๋ณ€ํ•จ์ด ์—†๋„ค์š”..

์—ฌ์ „ํžˆ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๊ณ ์žˆ๋Š” ์ƒํ™ฉ์ž…๋‹ˆ๋‹ค...

ํ˜น์‹œ๋‚˜ ํ•ด์„œ ์ œ build ํŒŒ์ผ์„ ์˜ฌ๋ฆฝ๋‹ˆ๋‹ค

0

yh

์•ˆ๋…•ํ•˜์„ธ์š” Yong D๋‹˜^^

Querydsl ์„ค์ •์„ ๋‹ค์‹œ ํ•œ๋ฒˆ ํ™•์ธํ•ด์ฃผ์„ธ์š”^^

ํ™œ์šฉํŽธ2 ๊ฐ•์˜์ž๋ฃŒ 40page~42page๋ฅผ ๋ณด์‹œ๋ฉด ๋ณด๋ฉด build.gradle์— querydsl ์ถ”๊ฐ€ ๋ถ€๋ถ„์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ถ€๋ถ„์— ์ „์ฒด ์†Œ์Šค๊ฐ€ ์žˆ์œผ๋‹ˆ ์ฐธ๊ณ ํ•˜์…”์„œ ์ „์ฒด ์„ค์ •์„ ๋‹ค ๋งž์ถ”์–ด ์ฃผ์„ธ์š”^^!

(souceSets ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ช‡๊ฐ€์ง€ ์„ค์ •์ด ๋” ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค!)

ํ•œ๋ฒˆ ๋„์ „ํ•ด๋ณด์‹œ๊ณ  ๊ทธ๋ž˜๋„ ์ž˜ ์•ˆ๋„์‹œ๋ฉด ๋‹ต๊ธ€ ๋‚จ๊ฒจ์ฃผ์„ธ์š”^^!!

@JsonIgnore ์ดํ›„ Internal Server Error๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

0

35

2

๊ฐ•์˜ ๊ด€๋ จ ์™ธ ์งˆ๋ฌธ์ž…๋‹ˆ๋‹ค.

0

93

2

SpringBoot4 + Hibernate7 ๋ชจ๋“ˆ ๋“ฑ๋ก ๋ฐฉ๋ฒ• ๊ณต์œ 

1

114

1

BeanCreationException

0

105

3

Update ํ›„ UpdateMemberResponse ๋งคํ•‘ํ•  ๋•Œ

0

68

1

ํŠธ๋žœ์žญ์…˜์„ ์‚ฌ์šฉ ์•ˆ ํ•  ๋•Œ ์ปค๋„ฅ์…˜์€ ์–ธ์ œ ๊ฐ€์ ธ์˜ค๋‚˜์š”?

0

117

2

ํŽ˜์ด์ง• + ๊ฒ€์ƒ‰์กฐ๊ฑด ๊ด€๋ จํ•ด์„œ ์งˆ๋ฌธ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

0

82

1

Query Dsl QํŒŒ์ผ ์งˆ๋ฌธ์ž…๋‹ˆ๋‹ค.

0

96

1

๋ฃจํŠธ ์ฟผ๋ฆฌ๋ผ๋Š”๊ฒƒ์€

0

69

1

๋ฉ”์„œ๋“œ๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š” ๊ธฐ์ค€

0

79

1

findAllWithMemberDelivery ๋ฉ”์„œ๋“œ ์งˆ๋ฌธ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

0

129

3

์—ฐ๊ด€๊ด€๊ณ„ ๋งคํ•‘์„ ์•ˆ ์“ธ ๊ฒฝ์šฐ, ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ์ „๋žต

0

99

2

fetch join๊ณผ ์˜์†ํ™”์™€ OSIV์˜ ๊ด€๊ณ„

0

104

2

Distinct ์‚ฌ์šฉ ์ „ ๊ฒฐ๊ณผ์— ๋Œ€ํ•œ ์˜๋ฌธ

0

127

2

๋ ˆํฌ์ง€ํ† ๋ฆฌ ๊ณ„์ธต์—์„œ์˜ ํŠธ๋žœ์žญ์…˜์— ๋Œ€ํ•œ ์˜๋ฌธ

0

68

1

์˜์†์„ฑ ์ปจํ…์ŠคํŠธ ์ƒ๋ช…์ฃผ๊ธฐ์˜ ์‹ ๊ธฐํ•œ ๋ถ€๋ถ„์ด ์žˆ์Šต๋‹ˆ๋‹ค.

0

86

2

dto ํ•„๋“œ ์† ์—”ํ‹ฐํ‹ฐ ์—ฌ๋ถ€

0

75

1

๋ทฐํ…œํ”Œ๋ฆฟ ์‚ฌ์šฉ ์‹œ

0

91

2

Result ํด๋ž˜์Šค ๊ด€๋ จ ์งˆ๋ฌธ

0

62

1

@PostConstruct ํ”„๋ก์‹œ ๊ด€๋ จ ์งˆ๋ฌธ๋“œ๋ฆฝ๋‹ˆ๋‹ค

0

94

1

DTO ๋Œ€์‹  Form ์‚ฌ์šฉ์€ ์•ˆ๋˜๋‚˜์š”?

0

144

1

OSIV ON ์ƒํƒœ์ผ ๋•Œ

0

103

1

fetch join VS fetch join ํŽ˜์ด์ง• ๊ถ๊ธˆ์ฆ

0

197

2

์–‘๋ฐฉํ–ฅ ์—ฐ๊ด€๊ด€๊ณ„ ์•Œ์•„๋ณด๋Š” ๋ฒ•?

0

115

1