Search
Duplicate
โ˜•

JPQL ์ฃผ์˜์‚ฌํ•ญ

โ€ข
to-many ๊ด€๊ณ„
โ—ฆ
fetch join ์ง€์–‘
โ–ช
์ฟผ๋ฆฌ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด one-to-many ๊ด€๊ณ„์—์„œ fetch join ์„ ํ•˜์˜€๋‹ค.
โ–ช
many ์˜ ๊ฐœ์ˆ˜๋งŒํผ ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ์˜คํžˆ๋ ค ์„ฑ๋Šฅ์ด ์•ˆ์ข‹์•„์กŒ๋‹ค.
โ–ช
์ฐจ๋ผ๋ฆฌ ์ฟผ๋ฆฌ 1๊ฐœ๊ฐ€ ๋” ๋‚˜๊ฐ€๋”๋ผ๋„ join ์„ ๊ฑธ์ง€ ์•Š๋Š”๊ฒŒ ์„ฑ๋Šฅ์ƒ ์ข‹์•˜๋‹ค.
โ—ฆ
fetch type=EAGER
โ–ช
๋‹จ๊ฑด ์กฐํšŒ์‹œ left outer join
โ€ข
์ค‘๋ณต ๋ ˆ์ฝ”๋“œ ์กฐํšŒ
โ–ช
๋ชฉ๋ก ์กฐํšŒ์‹œ ์šฐ์„  find all ํ•˜๊ณ  ๋ฐ”๋กœ to many ์˜ ๋ฐ์ดํ„ฐ ์กฐํšŒ
โ€ข
N+1 ๋ฐœ์ƒ
โ€ข
many-to-one ๊ด€๊ณ„
โ—ฆ
fetch type=EAGER
โ–ช
๋‹จ๊ฑด ์กฐํšŒ์‹œ
โ€ข
join column ์— nullable false ํ•˜๋ฉด inner, true ํ•˜๋ฉด left outer join
โ—ฆ
LAZY
โ–ช
๋ชฉ๋ก ์กฐํšŒ์‹œ
โ€ข
iter ๋Œ๋ฉด N+1
โ€ข
batch size ์„ค์ •ํ•˜๋ฉด one ์— ํ•ด๋‹นํ•˜๋Š” ๊ฐ์ฒด ์กฐํšŒ์‹œ in ์ ˆ ๋ฐœ์ƒ
โ€ข
ENUM ์˜ ๊ฒฝ์šฐ ํŒจํ‚ค์ง€๋ช…๊นŒ์ง€ ํฌํ•จํ•˜์—ฌ ๋„ฃ์–ด์•ผ ํ•œ๋‹ค.