1. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐฉ์ธ
JPA๋ ํน์ DB์ ์ข ์๋์ง ์๋๋ค. ๋ฐ๋ผ์ ์์์ ๋ฐ๊ฟ์ค๋ค.
2. JPA๊ตฌ๋ ๋ฐฉ์
Persistence ํด๋์ค๊ฐ META-INF/persistence.xml ์ค์ ํ์ผ์ ์ฝ์ด์ EntityManagerFactory๋ผ๋ ํด๋์ค๋ฅผ ์์ฑํ๋ค. ๊ทธ๋ฆฌ๊ณ ํ์ํ ๋๋ง๋ค EntityManager๋ฅผ ๋ง๋ ๋ค.
EntityManagerFactory๋ ํ๋๋ง ์์ฑํด์ ์ ์ฒด์์ ๊ณต์ ํ๊ณ ,
EntityManager๋ ์ฐ๋ ๋๊ฐ์ ๊ณต์ ํ์ง ์๊ณ ์ฌ์ฉ ํ ๋ฒ๋ฆฐ๋ค.
JPA์ ๋ชจ๋ ๋ฐ์ดํฐ ๋ณ๊ฒฝ์ ํธ๋์ญ์ ์์์ ์คํํ๋ค.
์์์ ์์ ํธ๋์ญ์ ์ ๋ํ ๊ธฐ๋ณธ์ ์ธ ๋ด์ฉ์ด ํ์ํ๋ค. ํ์ํ๋ค๋ฉด ๊ณต๋ถ๋ฅผ ๋ ํ๋๋ก ํ๊ณ , ๊ฐ๋จํ ์๋๊ธ๋ก ๊ฐ๋ ๋ง ์ก์๋ณด์
ํธ๋์ญ์
?
https://koreatstm.tistory.com/103
ํธ๋์ญ์
ํธ๋์ญ์ ํธ๋์ญ์ ์ ์ ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํ๋ฅผ ๋ณํ์ํค๊ธฐ ์ํด ์ํํ๋ ์์ ๋จ์์ด๋ค. ์ด๋, ์ํ๋ฅผ ๋ณํ์ํจ๋ค๋๊ฒ ๋ฌด์จ ๋ง์ผ๊น? ๋ง์ ์ด๋ ต๊ฒ ํ๋๋ฐ ์ฝ๊ฒ ์ด์ผ๊ธฐํด์ sql์ ๊ฐ์ง๊ณ ๋ฐ
koreatstm.tistory.com
EntityManagerFactory๋ ๋ก๋ฉ ์์ ์ ํ๋๋ง ๋ง๋ค์ด์ผ ํ๋ค.
EntityManager๋ ํธ๋์ญ์
๋ง๋ค ๋ง๋ค์ด์ค์ผ ํ๋ค.
JPA์ ๋ชจ๋ ์์
์ ํธ๋์ญ์
๋ด์์ ํด์ผํ๋ค.
EntityManager๊ฐ ๋ด๋ถ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ปค๋ฅ์
์ ๋ฌผ๊ณ ๋์ํ๊ธฐ ๋๋ฌธ์ ์ฐ๊ณ ๋์ ๊ผญ ๋ซ์์ค์ผ ํ๋ค.
์ ์ฒด ์ ํ๋ฆฌ์ผ์ด์
์ด ๋๋๋ฉด ํฉํ ๋ฆฌ๊น์ง ๋ซ์์ค๋ค.
3. JPQL
JPA๋ SQL์ ์ถ์ํํ JPQL์ด๋ผ๋ ๊ฐ์ฒด ์งํฅ ์ฟผ๋ฆฌ์ธ์ด๋ฅผ ์ ๊ณตํ๋ค.
JPQL์ ์ํฐํฐ ๊ฐ์ฒด๋ฅผ ๋์์ผ๋ก ์ฟผ๋ฆฌ
SQL์ DB ํ ์ด๋ธ์ ๋์์ผ๋ก ์ฟผ๋ฆฌ
์ฆ ์ ๋ฆฌํ๋ฉด JPQL์ ๊ฐ์ฒด์งํฅ SQL์ด๋ผ ํ ์ ์๋ค.
JPA๋ฅผ ์ฌ์ฉํ๋ฉด ์ํฐํฐ ๊ฐ์ฒด๋ฅผ ์ค์ฌ์ผ๋ก ๊ฐ๋ฐํ ์ ์๋ค. ๋ฌธ์ ๋ ๊ฒ์ ์ฟผ๋ฆฌ์ธ๋ฐ, ๊ฒ์๋ ์ํฐํฐ ๊ฐ์ฒด๋ฅผ ๋์์ผ๋ก ๊ฒ์ํ๋ค.
๋ชจ๋ DB ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ฒด๋ก ๋ณํํด์ ๊ฒ์ํ๋๊ฒ์ ๋ถ๊ฐ๋ฅํ๊ธฐ์, ํ์ํ ๋ฐ์ดํฐ๋ง ๋ถ๋ฌ์ค๋ ค๋ฉด ๊ฒ์ ์กฐ๊ฑด์ด ํฌํจ๋ SQL์ด ํ์
์ด๋ ๊ฐ์ฒด๋ฅผ ๋์์ผ๋ก ๊ฒ์ํ ์ ์๋ ๊ธฐ์ ์ด JPQL์ด๋ค.
'๐ผ ๋ฐฑ์ค๋ > Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
jasypt๋ฅผ ํตํ ์ํธํ (0) | 2024.02.19 |
---|---|
์์์ฑ ๊ด๋ฆฌ (0) | 2023.12.22 |
JPA๋? (0) | 2023.12.22 |
์๋ฐ ๋น๋ ํจํด์ด๋? (2) | 2023.12.20 |
@ControllerAdvicem, @RestControllerAdvice (0) | 2023.12.20 |