1. JPA Java Persistence API์ ์ฝ์๋ก, ์๋ฐ ์ง์์์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋ ๋ฐ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋งคํํ๊ณ ๊ด๋ฆฌํ๊ธฐ ์ํ ํ์ค ์ธํฐํ์ด์ค Persistence -> ์๊ตฌ์ ์ธ ๋ฐ์ดํฐ ๊ด๋ฆฌ๋ฅผ ์ํ ์ธํฐํ์ด์ค ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ๊ฐ๋
๊ณผ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ
์ด๋ธ ๊ฐ์ ๋งคํ์ ์ฒ๋ฆฌํ๊ธฐ ์ํ ORM(Object-Relational Mapping) ๊ธฐ์ ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ค. * ORM : ๊ฐ๋ฐ์๊ฐ SQL ์ฟผ๋ฆฌ๋ฅผ ์ง์ ์์ฑํ๋ ๋์ ์ ๊ฐ์ฒด ์งํฅ ์ฝ๋๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์กฐ์ํ ์ ์๋๋ก ํ๋ค. ์๋ฅผ ๋ค์๋ฉด, ํ๊ตญ์ธ๊ณผ ํ๋์ค์ธ, ์ผ๋ณธ์ธ ๋ฏธ๊ตญ์ธ์ด ์๋ค๊ณ ๊ฐ์ ํ ๋ ํ๊ตญ์ธ์ด "์๋
"์ด๋ผ๋ ์ธ์ฌ๋ฅผ ๊ฑด๋ค๋ฉด, JPA๋ ์ด "์๋
"์ ๊ฐ ๋๋ผ์ ์ธ์ด์ ๋ง๊ฒ ๋ฐ๊พธ์ด ์ ๋ฌํด์ฃผ๋ ์ญํ ์ ํ๋ค. ..
DTO(Data Transfer Object) ๊ณ์ธต ๊ฐ ๋ฐ์ดํฐ ๊ตํ์ ํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๊ฐ์ฒด ๋ก์ง์ ๊ฐ์ง์ง ์๋ ์์ํ ๋ฐ์ดํฐ ๊ฐ์ฒด(getter & setter ๋ง ๊ฐ์ง ํด๋์ค) ๋น์ฆ๋์ค ๋ก์ง์ด ์๋ ๋ฐ์ดํฐ๋ง ์ ์ฅํด์ผ ํจ ์ฉ๋์ด ์์ ๋จ์ํ ํ๊ฒฝ์ผ๋ก, ํ ๊ฐ์ง ์์
๋ง ์ํ DB - Table - Model - DTO DTO๋ฅผ ๋ง๋ค๋ฉด password๋ฅผ ๋
ธ์ถ์ํค์ง ์์ ์ ์๋ค. Model๋ฅผ ๋
ธ์ถ์์ผ์ ๊ฐ์ ๋นผ๋ฉด ์๋๋? - ํ
์ด๋ธ ๊ตฌ์กฐ๊ฐ ๋
ธ์ถ๋๋ค. DTO๋ฅผ ๊ณต์ ํ๋ฉด ์๋๋? ๐ ํจ๊ณผ์ ์ธ DTO ์์ฉ๊ตฌ ์ฝ๋๋ฅผ ์ต์ํ โ ์ฝ๋๋ฅผ ์ผ์ผ์ด ์๋ก ์์ฑํ๊ธฐ ๋๋ฌธ ์์ฑ์ด ์ฉ์ดํด์ผ ํจ โ DTO๋ ์์ฑ์ด ์ด๋ ค์ธ ์ ๋๋ก ๋ณต์กํด์๋ ์๋จ ์ฝ์ ์ ์์ด์ผ ํจ โ ๋๊ตฌ๋ ์ง ์ฝ๋ ๊ตฌ๋ฌธ์ ๋ถ์ํ ์ ์๋๋ก DTO๋ฅผ ์ฌ์ฉํ๋ ์ด์ ..
๋ฆฌํ๋ ์
์ด๋ ? 1. ๋ฆฌํ๋ ์
(Reflection) : ์คํ ์ค์ธ ํ๋ก๊ทธ๋จ์ ํด๋์ค, ๋ฉ์๋, ํ๋ ๋ฑ์ ๋ํ ์ ๋ณด๋ฅผ ์ป๊ฑฐ๋ ์กฐ์ํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ API ํด๋์ค์ ์ ๋ณด ๋ถ์, ์ธ์คํด์ค ์์ฑ, ๋ฉ์๋ ํธ์ถ, ํ๋์ ๊ฐ์ ๊ฐ์ ธ์ค๊ฑฐ๋ ์ค์ ๋ฑ์ ์์
์ํ 2. ๋ฆฌํ๋ ์
์ด ์ด์ฉ๋๋ ์ํฉ 1. ๋ฐํ์ ์์ ๋์ ์ผ๋ก ํด๋์ค๋ฅผ ๋ก๋ํด์ผ ํ๋ ๊ฒฝ์ฐ 2. ํด๋์ค์ ๊ตฌ์กฐ, ๋ฉ์๋, ํ๋ ๋ฑ์ ๋ํ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์์ ๋ถ์ํด์ผ ํ๋ ๊ฒฝ์ฐ 3. ํด๋์ค์ ์ธ์คํด์ค๋ฅผ ์์ฑํ๊ฑฐ๋ ๋ฉ์๋๋ฅผ ํธ์ถํ๊ฑฐ๋ ํ๋์ ๊ฐ์ ๋ณ๊ฒฝํด์ผ ํ๋ ๊ฒฝ์ฐ ์์ ์ค๋ช
์ผ๋ก๋ ์ดํด๊ฐ ์ด๋ ค์ฐ๋ ์กฐ๊ธ ๋ ์์๋ณด๋๋ก ํ์. # CASE 1 ์ฒซ๋ฒ์งธ ๊ฒฝ์ฐ์์, ๋ค์๊ณผ ๊ฐ์ด 1์ฐจ ๊ฐ๋ฐ์๋ "/login"์ ์
๋ ฅ ๋ฐ์์ ๋ uc.login() ๋ฉ์๋๊ฐ ํธ์ถ๋๋๋ก, "/jo..
enum์ด๋ enumeration type์ ์ค์ธ ๊ฒ์ผ๋ก, ์๋ฏธ์๋ ์์๋ฅผ ์ด๊ฑฐํ์ฌ ์ฌ์ฉํ๋ ํด๋์ค 1. ๐ฅ enum ์ฌ์ฉ์ ์ฅ์ ์ด๊ฑฐ์ฒด๋ฅผ ๋น๊ตํ ๋ ์ค์ ๊ฐ๋ฟ๋ง ์๋๋ผ ํ์
๊น์ง ์ฒดํฌ ์ด๊ฑฐ์ฒด์ ์์ซ๊ฐ์ด ์ฌ์ ์๋๋๋ผ๋ ๋ค์ ์ปดํ์ผํ ํ์ x 2. ๐ฅ๏ธ ์ฌ์ฉ ์์ (week) โผ Week ์ ์ enum enum Week { MON, TUE, WED, THU, FRI, SAT, SUN } โผ enum ์์๋ฅผ ์ ๋ฌ ๋ฐ๋ today ๋ฉ์๋ ์ ์ public static void today(Week week) { switch (week) { case MON: System.out.println("์ค๋์ ์์์ผ์
๋๋ค."); break; case TUE: System.out.println("์ค๋์ ํ์์ผ์
๋๋ค."); b..
'๐ต java' ์นดํ
๊ณ ๋ฆฌ์ ๊ธ ๋ชฉ๋ก (3 Page)
๋จ์ถํค
๋ด ๋ธ๋ก๊ทธ
๋ด ๋ธ๋ก๊ทธ - ๊ด๋ฆฌ์ ํ ์ ํ |
Q
Q
|
์ ๊ธ ์ฐ๊ธฐ |
W
W
|
๋ธ๋ก๊ทธ ๊ฒ์๊ธ
๊ธ ์์ (๊ถํ ์๋ ๊ฒฝ์ฐ) |
E
E
|
๋๊ธ ์์ญ์ผ๋ก ์ด๋ |
C
C
|
๋ชจ๋ ์์ญ
์ด ํ์ด์ง์ URL ๋ณต์ฌ |
S
S
|
๋งจ ์๋ก ์ด๋ |
T
T
|
ํฐ์คํ ๋ฆฌ ํ ์ด๋ |
H
H
|
๋จ์ถํค ์๋ด |
Shift + /
โง + /
|
* ๋จ์ถํค๋ ํ๊ธ/์๋ฌธ ๋์๋ฌธ์๋ก ์ด์ฉ ๊ฐ๋ฅํ๋ฉฐ, ํฐ์คํ ๋ฆฌ ๊ธฐ๋ณธ ๋๋ฉ์ธ์์๋ง ๋์ํฉ๋๋ค.