๋ฒ ์˜ค
DCode
๋ฒ ์˜ค
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (218)
    • ๊ณต์ง€์‚ฌํ•ญ (1)
    • ์žก์„ค (1)
    • Programming (33)
      • [C] (1)
      • [Java] (4)
      • [Python] (2)
      • [Android] (2)
      • [Network] (0)
      • [Operation System] (2)
      • [Spring Boot] (22)
      • [Docker] (0)
    • Algorithm (31)
      • ์ž๋ฃŒ๊ตฌ์กฐ (2)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜ (Java) (14)
      • ์•Œ๊ณ ๋ฆฌ์ฆ˜ (๊ธฐ์ดˆ) (15)
    • Coding Test (131)
      • BOJ (131)
      • Algospat (0)
    • ์ด๋ก ์ ์ธ๊ฑฐ (14)
      • ๋ณด์•ˆ (5)
      • ์˜ค๋ฅ˜ ํ•ด๊ฒฐ (2)
      • ๋””์ž์ธ ํŒจํ„ด (5)
      • ๋„คํŠธ์›Œํฌ (1)
      • ๊ธฐํƒ€ (1)
    • ์ตœ์‹ ๊ธฐ์ˆ  (4)
      • ๋ธ”๋ก์ฒด์ธ (1)
    • [Project] (1)

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

  • ๐Ÿˆโ€โฌ› GitHub
  • ๐Ÿ“ซ ๋ฐฉ๋ช…๋ก
  • ๐Ÿ”– ํƒœ๊ทธ

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
๋ฒ ์˜ค

DCode

Programming/[Spring Boot]

DB ๊ด€๋ จ ์šฉ์–ด

2023. 2. 1. 18:35

ORM :: Object Realation Mapping

๐Ÿ’ก
JAVA์˜ ๊ฐ์ฒด์™€ RDB์˜ ํ…Œ์ด๋ธ”์„ ์ž๋™์œผ๋กœ ๋งคํ•‘ํ•˜๋Š” ๋ฐฉ๋ฒ•

์žฅ์ 

  • ORM์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฟผ๋ฆฌ๋ฅผ ๊ฐ์ฒด์ง€ํ–ฅ์ ์œผ๋กœ ์กฐ์ž‘์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
    • ๊ฐ์ฒด๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ์žฌ์‚ฌ์šฉ, ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ํŽธ๋ฆฌํ•˜๋‹ค.
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ์ข…์†์„ฑ์ด ์ค„์–ด๋“ ๋‹ค.
    • ๊ฐ์ฒด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์„ ๊ด€๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ข…์†์ ์ด์ง€ ์•Š๋‹ค.

๋‹จ์ 

  • ORM๋งŒ์œผ๋กœ ์„œ๋น„์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ์—๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ๋‹ค.
    • ๋ณต์žกํ•œ ์„œ๋น„์Šค์˜ ๊ฒฝ์šฐ ์ฝ”๋“œ๋งŒ์œผ๋กœ ๊ตฌํ˜„ํ•˜๊ธฐ ๊นŒ๋‹ค๋กœ์›€

JPA :: Java Persistence API

Java์—์„œ ORM ๊ธฐ์ˆ  ํ‘œ์ค€์œผ๋กœ ์ฑ„๋Œ๋œ ์ธํ„ฐํŽ˜์ด์Šค ๋ชจ์Œ

ORM์€ ๊ฐœ๋…์ ์ธ ๋А๋‚Œ์ด๋ผ๋ฉด, JPA๋Š” ๊ฐœ๋…์ ์ธ ๋А๋‚Œ์„ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ํ‘œํ˜„ํ•œ ๊ฒƒ์ด๋‹ค.

์ด ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ด์šฉํ•œ ๊ตฌํ˜„์ฒด๋ฅผ ํ™•์ธํ•ด๋ณด์ž.

๋Œ€ํ‘œ์ ์ธ ๊ตฌํ˜„์ฒด

  1. ํ•˜์ด๋ฒ„๋„ค์ดํŠธ(Hibernate) << ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋จ
  1. ์ดํด๋ฆฝ์Šค ๋งํฌ (EclipseLink)
  1. ๋ฐ์ดํ„ฐ ๋‰ดํด๋ฆฌ์–ด์Šค (DataNucleus)

ํ•˜์ด๋ฒ„๋„ค์ดํŠธ (Hibernate)

๐Ÿ’ก
JPA๊ธฐ๋ฐ˜ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‹ค์ œ๋กœ ๊ตฌํ˜„ํ•œ ๊ตฌํ˜„์ฒด

Spring Data JPA

๐Ÿ’ก
Spring ํ™˜๊ฒฝ์—์„œ JPA๋ฅผ ํŽธ๋ฆฌํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๋Š” ๋„๊ตฌ

์˜์†์„ฑ ์ปจํ…์ŠคํŠธ :: Persistence Context

๐Ÿ’ก
์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ DB ์‚ฌ์ด์—์„œ Entity์™€ Record์˜ ๊ดด๋ฆฌ๋ฅผ ํ•ด์†Œํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ๊ฐ์ฒด๋ฅผ ๋ณด๊ด€ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰
  • Java์˜ ๊ฐ์ฒด๋ฅผ DB์˜ ๋ฐ์ดํ„ฐ ํ˜•์‹์œผ๋กœ ๋งคํ•‘ํ•ด์ฃผ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.

์—”ํ‹ฐํ‹ฐ ๋งค๋‹ˆ์ €

๐Ÿ’ก
์—”ํ‹ฐํ‹ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ฐ์ฒด
  • ์—”ํ‹ฐํ‹ฐ ๋งค๋‹ˆ์ €๊ฐ€ DB์— ์ ‘๊ทผํ•ด์„œ CRUD๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.


Uploaded by N2T

'Programming > [Spring Boot]' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Lombok  (0) 2023.03.12
JpaRepository getById, findById  (0) 2023.03.12
Swagger๋ฅผ ํ™œ์šฉํ•œ REST API ๋ช…์„ธ ๋ฌธ์„œํ™”  (0) 2023.01.25
PUT/DELETE API ๋งŒ๋“ค๊ธฐ  (1) 2023.01.21
POST API ๋งŒ๋“ค๊ธฐ  (0) 2023.01.20
    'Programming/[Spring Boot]' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • Lombok
    • JpaRepository getById, findById
    • Swagger๋ฅผ ํ™œ์šฉํ•œ REST API ๋ช…์„ธ ๋ฌธ์„œํ™”
    • PUT/DELETE API ๋งŒ๋“ค๊ธฐ
    ๋ฒ ์˜ค
    ๋ฒ ์˜ค

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