์ฐ๊ด๊ด๊ณ์ ์ฃผ์ธ๋ ์ ํด์ผํ๊ณ , ๋ก์ง๋ ์ ๊ด๋ฆฌํด์ผ ํ๋ค.
์ค์ํ ์ ์ ์ฐ๊ด๊ด๊ณ๊ฐ ํ๋์ธ ๋จ๋ฐฉํฅ ๋งคํ์ ์ธ์ ๋ ์ฐ๊ด๊ด๊ณ์ ์ฃผ์ธ์ด๋ค.
์๋ฐฉํฅ์ ์ฃผ์ธ์ด ์๋ ์ฐ๊ด๊ด๊ณ๋ฅผ ํ๋ ์ถ๊ฐํ์ ๋ฟ.
๊ฒฐ๊ตญ ์๋ฐฉํฅ์ ์ฅ์ ์ ๋ฐ๋๋ฐฉํฅ์ผ๋ก ๊ฐ์ฒด ๊ทธ๋ํ ํ์ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋ ๊ฒ๋ฟ์ด๋ค.
member.getTeam(); //ํ์->ํteam.getMembers(); //ํ->ํ์ (์๋ฐฉํฅ ๋งคํ์ผ๋ก ์ถ๊ฐ๋ ๊ธฐ๋ฅ)
์ฃผ์ธ์ ๋ฐ๋ํธ์ mappedBy๋ก ์ฃผ์ธ์ ์ง์ ํด์ผ ํ๊ณ , ๋จ์ํ ๋ณด์ฌ์ฃผ๋ ์ผ(๊ฐ์ฒด ๊ทธ๋ํ ํ์)๋ง ํ ์ ์๋ค.
๋ด์ฉ ์ ๋ฆฌ - ๋จ๋ฐฉํฅ ๋งคํ๋ง์ผ๋ก ํ ์ด๋ธ๊ณผ ๊ฐ์ฒด์ ์ฐ๊ด๊ด๊ณ ๋งคํ์ ์ด๋ฏธ ์๋ฃ๋จ - ๋จ๋ฐฉํฅ์ ์๋ฐฉํฅ์ผ๋ก ๋ง๋ค๋ฉด ๋ฐ๋๋ฐฉํฅ์ผ๋ก ๊ฐ์ฒด ๊ทธ๋ํ ํ์ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋จ - ์๋ฐฉํฅ ์ฐ๊ด๊ด๊ณ๋ฅผ ๋งคํํ๋ ค๋ฉด ๊ฐ์ฒด์์ ์์ชฝ ๋ฐฉํฅ์ ๋ชจ๋ ๊ด๋ฆฌํด์ผ ํจ
๋น์ฆ๋์ค ๋ก์ง์ ํ์์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์ง๋ง์ฐ์ ๋จ๋ฐฉํฅ ๋งคํ์ ์ฌ์ฉํ๊ณ ๋ฐ๋ ๋ฐฉํฅ์ผ๋ก ๊ฐ์ฒด ๊ทธ๋ํ ํ์ ๊ธฐ๋ฅ(JPQL ์ฟผ๋ฆฌ ํ์ ํฌํจ)์ด ํ์ํ ๋ ์๋ฐฉํฅ์ ์ฌ์ฉํ๋๋ก ์ฝ๋๋ฅผ ์ถ๊ฐํด๋ ๋๋ค.
โญ ์ฐ๊ด๊ด๊ณ์ ์ฃผ์ธ์ ์ ํ๋ ๊ธฐ์ค - ๋จ๋ฐฉํฅ์ ํญ์ ์ธ๋ํค๊ฐ ์๋ ๊ณณ์ ๊ธฐ์ค์ผ๋ก ๋งคํ - ์๋ฐฉํฅ์ ๋น์ฆ๋์ค ๋ก์ง์ ๋ ์ค์ํ๋ค๊ณ ์ฃผ์ธ์ผ๋ก ์ ํํ๋ฉด ์๋จ
๋น์ฆ๋์ค ์ค์๋๋ฅผ ๋ฐฐ์ ํ๊ณ ๋จ์ํ ์ธ๋ํค ๊ด๋ฆฌ์ ์ ๋์ ์๋ฏธ๋ง ๋ถ์ฌ - ์ฐ๊ด๊ด๊ณ์ ์ฃผ์ธ์ ์ธ๋ํค์ ์์น์ ๊ด๋ จํด์ ์ ํด์ผ์ง ๋น์ฆ๋์ค๋ก ์ ๊ทผํ๋ฉด ์๋จ