jiisoo
์ง€์ˆ˜๋กœ๊ทธ
jiisoo
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • home
  • Github
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด ์ €์žฅ์†Œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (80)
    • Java (1)
    • Spring (30)
    • JPA (15)
    • cs (8)
      • ๋””์ž์ธํŒจํ„ด (1)
      • ๋„คํŠธ์›Œํฌ (5)
      • Database (1)
      • ์šด์˜์ฒด์ œ (1)
    • algorithm (18)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜ & ์ž๋ฃŒ๊ตฌ์กฐ ์ด๋ก  (12)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด (6)
    • ๋ฉด์ ‘ ์ค€๋น„ (0)
    • ํšŒ๊ณ  (5)
      • ATDD (4)
      • ํ•™์Šตํ…Œ์ŠคํŠธ๋กœ ๋ฐฐ์šฐ๋Š” spring 2๊ธฐ (1)
      • ํ”„๋กœ์ ํŠธ (0)

์ธ๊ธฐ ๊ธ€

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํƒœ๊ทธ

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
jiisoo

์ง€์ˆ˜๋กœ๊ทธ

[Jpa] ๊ธฐ๋ณธ ๊ฐ’ ํƒ€์ž…
JPA

[Jpa] ๊ธฐ๋ณธ ๊ฐ’ ํƒ€์ž…

2023. 6. 13. 19:59

 

๐Ÿ’ก ๊ธฐ๋ณธ ๊ฐ’ ํƒ€์ž…

1๏ธโƒฃ  ์—”ํ‹ฐํ‹ฐ ํƒ€์ž…

  • @Entity ๋กœ ์ •์˜ํ•˜๋Š” ๊ฐ์ฒด 
  • ๋ฐ์ดํ„ฐ๊ฐ€ ๋ณ€ํ•ด๋„ ์‹๋ณ„์ž๋กœ ์ง€์†ํ•ด์„œ ์ถ”์  ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ex ) ํšŒ์› ์—”ํ‹ฐํ‹ฐ์˜ ํ‚ค๋‚˜ ๋‚˜์ด ๊ฐ’์„ ๋ณ€๊ฒฝํ•ด๋„ ์‹๋ณ„์ž๋กœ ์ธ์‹์ด ๊ฐ€๋Šฅํ•˜๋‹ค. 

 

2๏ธโƒฃ  ๊ฐ’ ํƒ€์ž… 

  • int, Integer, String ์ฒ˜๋Ÿผ ๋‹จ์ˆœํžˆ ๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์ž๋ฐ” ๊ธฐ๋ณธ ํƒ€์ž…์ด๋‚˜ ๊ฐ์ฒด 
  • ์‹๋ณ„์ž๊ฐ€ ์—†๊ณ  ๊ฐ’๋งŒ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ณ€๊ฒฝ์‹œ ์ถ”์ ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ex ) ์ˆซ์ž 100 ์„ 200 ์œผ๋กœ ๋ณ€๊ฒฝํ•˜๋ฉด ์™„์ „ํžˆ ๋‹ค๋ฅธ ๊ฐ’์œผ๋กœ ๋Œ€์ฒด๋˜๊ธฐ๋•Œ๋ฌธ์— ์ถ”์ ์ด ๋ถˆ๊ฐ€๋Šฅ.
  • ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ์—”ํ‹ฐํ‹ฐ์— ์˜์กด 
    • ํšŒ์›์„ ์‚ญ์ œํ•˜๋ฉด ์ด๋ฆ„, ๋‚˜์ด ํ•„๋“œ๋„ ํ•จ๊ป˜ ์‚ญ์ œ
  • ๊ฐ’ ํƒ€์ž…์€ ๊ณต์œ ํ•˜๋ฉด ์•ˆ๋œ๋‹ค.
    • ํšŒ์› ์ด๋ฆ„ ๋ณ€๊ฒฝ ์‹œ ๋‹ค๋ฅธ ํšŒ์›์˜ ์ด๋ฆ„๋„ ํ•จ๊ป˜ ๋ณ€๊ฒฝ๋˜๋ฉด ์•ˆ๋จ. (์‚ฌ์ด๋“œ ์ดํŽ™ํŠธ ๋ฐœ์ƒ - ๋ถ€์ˆ˜ ํšจ๊ณผ ๋ฐœ์ƒ)

โœ”๏ธŽ ๊ฐ’ ํƒ€์ž…์˜ ๋ถ„๋ฅ˜ 

  • ๊ธฐ๋ณธ ๊ฐ’ ํƒ€์ž…
    • ์ž๋ฐ” ๊ธฐ๋ณธ ํƒ€์ž… (int, double)
      • int, double ๊ฐ™์€ ๊ธฐ๋ณธํƒ€์ž…์€ ์ ˆ๋Œ€ ๊ณต์œ ๋˜์ง€ ์•Š๋Š”๋‹ค.
        • ํ•ญ์ƒ ๊ฐ’์„ ๋ณต์‚ฌํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
      • Integer ๊ฐ™์€ ๋ž˜ํผ ํด๋ž˜์Šค๋‚˜ String ๊ฐ™์€ ํŠน์ˆ˜ํ•œ ํด๋ž˜์Šค๋Š” ๊ณต์œ  ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด์ด์ง€๋งŒ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค.
    • ๋ž˜ํผ ํด๋ž˜์Šค (Integer, Long)
    • String
      • ์˜ˆ ) ํšŒ์›์„ ์‚ญ์ œํ•˜๋ฉด ์ด๋ฆ„, ๋‚˜์ด ํ•„๋“œ๋„ ํ•จ๊ป˜ ์‚ญ์ œ๋œ๋‹ค.
  • ์ž„๋ฒ ๋””๋“œ ํƒ€์ž… 
    • ์ƒˆ๋กœ์šด ๊ฐ’ ํƒ€์ž…์„ ์ง์ ‘ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Œ
    • ์ฃผ๋กœ ๊ธฐ๋ณธ ๊ฐ’ ํƒ€์ž…์„ ๋ชจ์•„ ๋งŒ๋“ค๊ธฐ ๋•Œ๋ฌธ์— ๋ณตํ•ฉ ๊ฐ’ ํƒ€์ž…์ด๋ผ๊ณ ๋„ ๋ถˆ๋ฆฐ๋‹ค.
      • int, String ๊ณผ ๊ฐ™์€ ๊ฐ’ ํƒ€์ž…
    • ๋น„์Šทํ•œ ๋А๋‚Œ์˜ ํ•„๋“œ๋“ค์„ ๋ชจ์•„ ํด๋ž˜์Šค๋กœ ๋ฝ‘์€ ๊ฒƒ.
    • ์‚ฌ์šฉ๋ฒ• 
      • @Embeddable : ๊ฐ’ ํƒ€์ž…์„ ์ •์˜ํ•˜๋Š” ๊ณณ์— ํ‘œ์‹œ
      • @Embedded :  ๊ฐ’ ํƒ€์ž…์„ ์‚ฌ์šฉํ•˜๋Š” ๊ณณ์— ํ‘œ์‹œ 
      • ๊ธฐ๋ณธ ์ƒ์„ฑ์ž๋Š” ํ•„์ˆ˜!
    • ์˜ˆ๋ฅผ ๋“ค์–ด ํ™•์ธํ•ด๋ณด์ž.
      • ํšŒ์› ์—”ํ‹ฐํ‹ฐ๋Š” ์ด๋ฆ„, ๊ทผ๋ฌด ์‹œ์ž‘์ผ, ๊ทผ๋ฌด ์ข…๋ฃŒ์ผ, ์ฃผ์†Œ ๋„์‹œ, ์ฃผ์†Œ ๋ฒˆ์ง€, ์ฃผ์†Œ ์šฐํŽธ๋ฒˆํ˜ธ๋ฅผ ๊ฐ€์ง„๋‹ค.

  • ์ฃผ์†Œ์™€ ๊ด€๋ จ๋œ ํ•„๋“œ๋“ค์„ ๋ชจ์•„๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์ž„๋ฒ ๋””๋“œ ํƒ€์ž…์˜ ์žฅ์  
    • ์žฌ์‚ฌ์šฉ์„ฑ
    • ๋†’์€ ์‘์ง‘๋„
  • ์ž„๋ฒ ๋””๋“œ ํƒ€์ž…์„ ํ†ตํ•ด ๊ฐ์ฒด๋ฅผ ๋ถ„๋ฆฌํ•˜๋”๋ผ๋„ ํ…Œ์ด๋ธ”์€ ํ•˜๋‚˜๋งŒ ๋งคํ•‘๋œ๋‹ค.

  • ์ž„๋ฒ ๋””๋“œ ํƒ€์ž…์€ ์—”ํ‹ฐํ‹ฐ์˜ ๊ฐ’์ผ ๋ฟ์ด๋‹ค.
  • ๊ฐ์ฒด์™€ ํ…Œ์ด๋ธ”์„ ์•„์ฃผ ์„ธ๋ฐ€ํ•˜๊ฒŒ ๋งคํ•‘ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ์ž˜ ์„ค๊ณ„ํ•œ ORM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋งคํ•‘ํ•œ ํ…Œ์ด๋ธ”์˜ ์ˆ˜๋ณด๋‹ค ํด๋ž˜์Šค์˜ ์ˆ˜๊ฐ€ ๋” ๋งŽ๋‹ค.

 

 

 

 

<์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ ์„ ์ฐธ๊ณ ํ•˜์—ฌ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.>

 

'JPA' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Jpa] ๊ฐ’ ํƒ€์ž… ์ปฌ๋ ‰์…˜  (0) 2023.06.27
[Jpa] ๊ฐ’ ํƒ€์ž…๊ณผ ๋ถˆ๋ณ€ ๊ฐ์ฒด  (0) 2023.06.19
[Jpa] ์˜์†์„ฑ ์ „์ด(CASCADE) ์™€ ๊ณ ์•„ ๊ฐ์ฒด  (0) 2023.06.08
[Jpa] ์ฆ‰์‹œ๋กœ๋”ฉ๊ณผ ์ง€์—ฐ๋กœ๋”ฉ  (0) 2023.06.01
[Jpa] ํ”„๋ก์‹œ๋ž€  (0) 2023.05.30
    'JPA' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [Jpa] ๊ฐ’ ํƒ€์ž… ์ปฌ๋ ‰์…˜
    • [Jpa] ๊ฐ’ ํƒ€์ž…๊ณผ ๋ถˆ๋ณ€ ๊ฐ์ฒด
    • [Jpa] ์˜์†์„ฑ ์ „์ด(CASCADE) ์™€ ๊ณ ์•„ ๊ฐ์ฒด
    • [Jpa] ์ฆ‰์‹œ๋กœ๋”ฉ๊ณผ ์ง€์—ฐ๋กœ๋”ฉ
    jiisoo
    jiisoo

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”