Search
Duplicate
โ˜•

JPA ์‚ฌ์šฉ ์‹œ ์ฃผ์˜์‚ฌํ•ญ

ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„๋™์•ˆ ๊ฒช์€ JPA ์ฃผ์˜์‚ฌํ•ญ
โ€ข
equals ์™€ hashCode ๋Š” ํ•ญ์ƒ ์žฌ์ •์˜ํ•˜๊ธฐ
โ—ฆ
์›ฌ๋งŒํ•˜๋ฉด Primary Key(ID)๊ฐ€ ์•„๋‹Œย ํ•ญ์ƒ ๋ณ€์น˜ ์•Š๊ณ  ํ•ด๋‹น ๊ฐ์ฒด๋ฅผ ๋Œ€ํ‘œํ•˜๋Š” ์˜๋ฏธ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ํ‚ค(business key)
โ—ฆ
์ด์œ ๋Š” Set๋“ฑ์— ์˜์†ํ™”๊ฐ€ ๋˜์ง€ ์•Š์€ ์‹ ๊ทœ ๊ฐ์ฒด๋ฅผ ๋„ฃ์„ ๊ฒฝ์šฐ ์‹ ๊ทœ ๊ฐ์ฒด๋Š” ์•„์ง ํ”„๋ผ์ด๋จธ๋ฆฌํ‚ค๊ฐ€ ์ง€์ •๋˜์ง€ ์•Š์€ ์ƒํƒœ์ด๊ธฐ ๋•Œ๋ฌธ์— ID๊ฐ€ ๋ชจ๋‘ย nullย ํ˜น์€ย 0
โ—ฆ
๊ทผ๋ฐ ์œ„์™€ ๊ฐ™์€ business key ๋ฅผ ์ฐพ๊ธฐ๊ฐ€ ์‰ฝ์ง€ ์•Š๋‹ค.
โ€ข
equals ์žฌ์ •์˜ํ•  ๋•Œ ํ”„๋ก์‹œ ๊ฐ์ฒด ์กฐ์‹ฌํ•˜๊ธฐ
โ—ฆ
getClass() != o.getClass() ์ด ๋ถ€๋ถ„์—์„œ ๊ฐ™์€ ๊ฐ’์œผ๋กœ ์˜๋„ํ–ˆ์ง€๋งŒ ํ”„๋ก์‹œ ๊ฐ์ฒด๋ผ์„œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. ํ•ด๋‹น ๋ถ€๋ถ„์„ !(o instanceof Class) ๋กœ ๋ณ€๊ฒฝํ•ด์•ผ ํ•œ๋‹ค.
โ€ข
์“ฐ๊ธฐ ์ง€์—ฐ ์ €์žฅ์†Œ์˜ ์ฟผ๋ฆฌ ์ˆœ์„œ ์กฐ์‹ฌํ•˜๊ธฐ!