AOP๊ฐ ํ์ํ ์ํฉ๋ชจ๋ ๋ฉ์๋์ ํธ์ถ ์๊ฐ์ ์ธก์ ํ๊ณ ์ถ๋ค๋ฉด?๊ณตํต ๊ด์ฌ ์ฌํญ(cross-cutting concern) vs ํต์ฌ ๊ด์ฌ ์ฌํญ(core concern)ํ์ ๊ฐ์ ์๊ฐ, ํ์ ์กฐํ ์๊ฐ์ ์ธก์ ํ๊ณ ์ถ๋ค๋ฉด?MemberService ํ์ ์กฐํ ์๊ฐ ์ธก์ ์ถ๊ฐA
์์ Jdbc ํ๊ฒฝ ์ค์ build.gradle ํ์ผ์ jdbc, h2 ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ จ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ถ๊ฐ
์ปดํฌ๋ํธ ์ค์บ๊ณผ ์๋ ์์กด๊ด๊ณ ์ค์ ์๋ฐ ์ฝ๋๋ก ์ง์ ์คํ๋ง ๋น ๋ฑ๋กํ๊ธฐ ์ปดํฌ๋ํธ ์ค์บ๊ณผ ์๋ ์์กด๊ด๊ณ ์ค์ ํ์ ์ปจํธ๋กค๋ฌ์ ์์กด๊ด๊ณ ์ถ๊ฐ > memberService๊ฐ ์คํ๋ง ๋น์ผ๋ก ๋ฑ๋ก๋์ด ์์ง ์๋ค. ์คํ๋ง ๋น์ ๋ฑ๋กํ๋ 2๊ฐ์ง ๋ฐฉ๋ฒ ๐ธ์ปดํฌ๋ํธ ์ค์บ๊ณผ ์
๋น์ฆ๋์ค ์๊ตฌ์ฌํญ ์ ๋ฆฌ ๋ฐ์ดํฐ : ํ์ID,์ด๋ฆ ๊ธฐ๋ฅ : ํ์ ๋ฑ๋ก, ์กฐํ ์์ง ๋ฐ์ดํฐ ์ ์ฅ์๊ฐ ์ ์ ๋์ง ์์(๊ฐ์์ ์๋๋ฆฌ์ค) ํ์ ๋๋ฉ์ธ๊ณผ ๋ฆฌํฌ์งํ ๋ฆฌ ๋ง๋ค๊ธฐ ํ์ ๊ฐ์ฒด ํ์ ๋ฆฌํฌ์งํ ๋ฆฌ ์ธํฐํ์ด์ค ํ์ ๋ฆฌํฌ์งํ ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ ๊ตฌํ์ฒด ํ์ ๋ฆฌํฌ์งํ ๋ฆฌ ํ์คํธ ์ผ์ด์ค ์
์คํ๋ง ์น ๊ฐ๋ฐ ๊ธฐ์ด > ๐ธ์ ์ ์ปจํ ์ธ ๐ธMVC์ ํ ํ๋ฆฟ ์์ง ๐ธAPI ์ ์ ์ปจํ ์ธ (static) ๋ชจ๋ ์ฌ์ฉ์์ ์นํ์ด์ง์์ ์ฝํ ์ธ ๊ฐ ๋์ผํ๊ฒ ์ ์ง ์คํ ๋ฐฉ๋ฒ : localhost:8080/[ํ์ผ์ด๋ฆ] resources/static/hello-static.ht
ํ๋ก์ ํธ ํ๊ฒฝ์ค์ ํ๋ก์ ํธ ์์ฑ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ดํด๋ณด๊ธฐ View ํ๊ฒฝ์ค์ ๋น๋ํ๊ณ ์คํํ๊ธฐ ํ๋ก์ ํธ ์์ฑ > #### ์ฌ์ ์ค๋น๋ฌผ > ๐ธ java 17 ์ค์น > ๐ธ IDE : Intellij ๋๋ Eclipse ์ค์น >### ํ๋ก์ ํธ ์ ํ Project: Grad