๋ฐ์ํ
์ง์ฐ ๋ก๋ฉ
- ์์ ํ ์ด๋ธ๊ณผ ๊ณ ๊ฐ ํ ์ด๋ธ์ด N:1 ์๋ฐฉํฅ ๊ด๊ณ๋ผ ๊ฐ์
- "์๋ณด์นด๋ ํผ์"์ ๊ฐ๊ฒฉ์ ์กฐํํ๋ ค๊ณ ํ์ ๋ฟ์ธ๋ฐ ์๋์ผ๋ก JOIN ๋ฌธ์ ์ฌ์ฉํ์ฌ ์ฐ๊ด๊ด๊ณ๊ฐ ์ค์ ๋์ด ์๋ ๊ณ ๊ฐ ํ ์ด๋ธ์ ์ ๋ณด๋ ๊ฐ์ ธ์ด
- JPA๋ ์ฐ๊ด๊ด๊ณ๊ฐ ์ค์ ๋ Entity์ ์ ๋ณด๋ฅผ ๋ฐ๋ก ๊ฐ์ ธ์ฌ ์ง, ํ์ํ ๋ ๊ฐ์ ธ์ฌ ์ง ์ ํ ์ ์์
- ์ฆ, ๊ฐ์ ธ์ค๋ ๋ฐฉ๋ฒ์ ์ ํ๊ฒ๋๋๋ฐ JPA์์๋
Fetch Type
์ด๋ผ๊ณ ๋ถ๋ฆ - Fetch Type์ ์ข
๋ฅ์๋ 2๊ฐ์ง๊ฐ ์๋๋ฐ, ํ๋๋
LAZY
, ๋ค๋ฅธ ํ๋๋EAGER
LAZY
๋์ง์ฐ ๋ก๋ฉ
์ผ๋ก ํ์ํ ์์ ์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ดEAGER
๋์ฆ์ ๋ก๋ฉ
์ผ๋ก ์กฐํํ ๋ ์ฐ๊ด๋ ๋ชจ๋ Entity์ ์ ๋ณด๋ฅผ ์ฆ์ ๊ฐ์ ธ์ด
- ์ฆ, ๊ฐ์ ธ์ค๋ ๋ฐฉ๋ฒ์ ์ ํ๊ฒ๋๋๋ฐ JPA์์๋
- ๊ธฐ๋ณธ์ ์ผ๋ก
@OneToMany
์ ๋ํ ์ด์ ์Fetch Type
์ default ๊ฐ์ดLAZY
๋ก ์ง์ ๋์ด ์๊ณ ๋ฐ๋๋ก@ManyToOne
์ ๋ํ ์ด์ ์EAGER
๋ก ๋์ด ์์ - ๋ค๋ฅธ ์ฐ๊ด ๊ด๊ณ ์ ๋ํ
์ด์
๋ค๋ default ๊ฐ์ด ์๋๋ฐ ์ด๋ฅผ ๊ตฌ๋ถํ๋ ๋ฐฉ๋ฒ์ด ์์
- ์ ๋ํ
์ด์
์ด๋ฆ์์ ๋ค์ชฝ์ Many๊ฐ ๋ถ์ด ์์ผ๋ฉด ์ค์ ๋ ํ๋๊ฐ Java ์ปฌ๋ ์
ํ์
์ผ ๊ฒ
- ์ฆ, ํด๋น Entity์ ์ ๋ณด๊ฐ ์ฌ๋ฌ ๊ฐ ๋ค์ด์์ ์ ์๋ค๋ ๊ฒ์ ์๋ฏธ
- ๋ฐ๋ผ์ ํจ์จ์ ์ผ๋ก ์ ๋ณด๋ฅผ ์กฐํํ๊ธฐ ์ํด
์ง์ฐ ๋ก๋ฉ
์ด default๋ก ์ค์ ๋์ด ์์- ๋ฐ๋๋ก ์ด๋ฆ ๋ค์ชฝ์ด one์ผ ๊ฒฝ์ฐ ํด๋น Entity ์ ๋ณด๊ฐ ํ ๊ฐ๋ง ๋ค์ด์ค๊ธฐ ๋๋ฌธ์ ์ฆ์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์๋ ๋ฌด๋ฆฌ๊ฐ ์์ด
์ฆ์ ๋ก๋ฉ
์ด default๋ก ์ค์
- ๋ฐ๋๋ก ์ด๋ฆ ๋ค์ชฝ์ด one์ผ ๊ฒฝ์ฐ ํด๋น Entity ์ ๋ณด๊ฐ ํ ๊ฐ๋ง ๋ค์ด์ค๊ธฐ ๋๋ฌธ์ ์ฆ์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์๋ ๋ฌด๋ฆฌ๊ฐ ์์ด
- ์ ๋ํ
์ด์
์ด๋ฆ์์ ๋ค์ชฝ์ Many๊ฐ ๋ถ์ด ์์ผ๋ฉด ์ค์ ๋ ํ๋๊ฐ Java ์ปฌ๋ ์
ํ์
์ผ ๊ฒ
728x90
๋ฐ์ํ
'๋ด์ผ๋ฐฐ์์บ ํ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๊น๋ฐฅ ์ฒ๊ตญ ํ๋ก์ ํธ KPT (0) | 2023.12.12 |
---|---|
์คํ๋ง ์ฌํ 5์ฃผ์ฐจ : Spring AOP (0) | 2023.11.30 |
[KPT] ๋ด์คํผ๋ ํ๋ก์ ํธ (0) | 2023.11.28 |
์คํ๋ง ์๋ จ 3์ฃผ์ฐจ : Spring Security (1) | 2023.11.17 |
์คํ๋ง ์๋ จ 3์ฃผ์ฐจ : ํํฐ (1) | 2023.11.17 |