๐ซ
Yoongeon Dev
/
Category Posts (none)
/
Jpa
Search
Share
Jpa
[JPA] SQL Mapper์ ORM์ ์ฐจ์ด
[JPA] SQL Mapper์ ORM์ ์ฐจ์ด
[JPA] ORM - JPA - Hibetnate ์ ๋ฆฌ (+ Spring Data JPA)
[JPA] ORM - JPA - Hibetnate ์ ๋ฆฌ (+ Spring Data JPA)
์ฐ๋ฆฌ๊ฐ ๊ฐ๋ฐ์ ํ๋ฉด์ ๋ฉ๋ชจ๋ฆฌ์ ์ผํ์ฑ์ผ๋ก ์ ์ฅ๋์๋ค๊ฐ ์ฌ๋ผ์ง๋ ์ ๋ณด๋ค๋ ์์ง๋ง ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ์ ํจ์ผ๋ก์จ ์์์ฑ์ ๋ถ์ฌํด์ผ ํ๋ ์ ๋ณด๋ค๋ ์๋ค.(ex. ์ฌ์ฉ์ ์ ๋ณด, ๊ฒฐ์ ๋ด์ญ ๋ฑ๋ฑ..)
์ ๋ณด๋ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅํ๋ ๊ฒ์
์์์ฑ
์ ๋ถ์ฌํ๋ค๊ณ ๋ณผ ์ ์๋๋ฐ Java์์ ์์์ฑ์ ๋ถ์ฌํ๋ ๋ฐฉ๋ฒ์ ํฌ๊ฒ ์์ ์ด๋ฏธ์ง์ฒ๋ผ
SQL Mapper
์
ORM
์ ์ด์ฉํ๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์๋ค.
SQL Mapper
SQL Mapper
๋ XML์ด๋ ์ด๋ ธํ ์ด์ ๋ฑ์ ์ฌ์ฉํด์ SQL์ ์์ฑํด์ JDBC API๋ฅผ ์ด์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๊ทผํด์ ๋ฐ์ดํฐ์ ์์์ฑ์ ๋ถ์ฌํ๋ ๊ธฐ์ ์ด๋ค. SQL Mapper์ ๋ํ์ ์ธ ๊ธฐ์ ์ผ๋ก๋
Mybatis
๊ฐ ์๋ค.
์ฅ์
1.
SQL์ ์ง์ ์ง๊ธฐ ๋๋ฌธ์ ๋๋ฒ๊น ์ ์ฉ์ดํ๋ค.
2.
SQL์์ฑ์ด ์ต์ํ ๊ฐ๋ฐ์์๊ฒ๋ ๋ช ํํ๊ณ ์ง๊ด์ ์ธ ๋ฐฉ์์ด๋ค.
๋จ์
1.
DBMS๋ง๋ค ์ฟผ๋ฆฌ๋ฅผ ๋ค๋ฅด๊ฒ ์ง์ผํ๋ค
2.
๊ฐ๋ฐ์๊ฐ ๊ฐ๋ฐ์ ์ข ๋ ์ง์คํ ์ ์๋ค.
ORM
[JPA] SQL Mapper์ ORM์ ์ฐจ์ด
ORM (Object-Relational Mapping)
ORM
์ ๊ฐ์ฒด ๊ด๊ณ ๋งคํ์ ์๋ฏธํ๋๋ฐ Java์ ๊ฐ์ ๊ฐ์ฒด์งํฅ ์ธ์ด์์ ๊ฐ์ฒด์ ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ํ ์ด๋ธ์ ์๋์ผ๋ก ๋งคํํ๋ ๋ฐฉ๋ฒ์ด๋ค.
ORM์ ์ฌ์ฉํ์ง ์์ ๋ ์ดํ๋ฆฌ์ผ์ด์ ์์ ๊ด๋ฆฌ๋๋ ๊ฐ์ฒด(ํด๋์ค)๋ค์ ํ ์ด๋ธ๊ณผ ๋งคํ๋๊ฒ ์ค๊ณ๋์ง ์๊ธฐ ๋๋ฌธ์ ํ ์ด๋ธ๊ณผ
๋ถ์ผ์น
๊ฐ ์กด์ฌํ ์ ๋ฐ์ ์๋ค.
ORM
์ ์ํฐํฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฌํ ๋ถ์ผ์น๋ฅผ ํด๊ฒฐํ๋ฉฐ ์ง์ ์ฟผ๋ฆฌ๋ฅผ ์์ฑํ๋ ๊ฒ์ด ์๋ ๋ฉ์๋๋ฅผ ์คํํจ์ผ๋ก์จ CRUD๋ฅผ ์คํํ ์ ์๊ฒ ํ๋ ๋ฐฉ๋ฒ์ด๋ค.
JPA (Java Persistence API)
JPA
๋ ORM์ Java์์ ๊ตฌํํ ์ ์๋๋ก ์ค๊ณ๋ ์ธํฐํ์ด์ค๋ผ๊ณ ํ ์ ์๋ค.
์ค์ ๋ก JPA๋ฅผ ์ ์ํ javax.persistence๋ ๋๋ถ๋ถ interface, enum, exception, annotation ๋ค๋ก ์ด๋ฃจ์ด์ ธ ์๋ค.
์์ ๊ฐ์ ์ด์ ๋๋ฌธ์ ๋ฐ๋ก ์ฌ์ฉํ ์ ์๋ค. ์ด๋ฅผ ๊ตฌํํ ๊ตฌํ์ฒด๋ฅผ ์ฌ์ฉํด์ผ ๋๋๋ฐ, ๊ฐ์ฅ ๋ํ์ ์ธ ๊ตฌํ์ฒด๊ฐ
Hibernate
์ด๋ค.
[JPA] ORM - JPA - Hibetnate ์ ๋ฆฌ (+ Spring Data JPA)