
์ ๊ทํธ๋ 3์ฃผ์ฐจ, ์ฃผํน๊ธฐ(Spring) ์ฃผ์ฐจ๊ฐ ์์๋๋ค. ์ฃผํน๊ธฐ ๊ณต๋ถ๋ฅผ ์งํํ๋ฉด์, 5๋จ๊ณ๋ก ๋๋ ๊ณผ์ ๋ฅผ ํต๊ณผํด์ผํ๋ค. ์ค๋์ ์ง๊ธ๋ฐ์ ๊ฐ์์ 1์ฃผ์ฐจ ๋ถ๋ถ์ ๋ค์๋ค. ๋คํธ์ํฌ์ HTTP ๊ตฌ์กฐ, API์ ๊ฐ์ ๊ธฐ์ด ์ง์์ ๊ฐ๋จํ๊ฒ ์๊ฐํ๊ณ , Spring์ ๋ํ ๊ฐ์๊ฐ ์งํ๋๋ค. MVC ํจํด / Controller์ ๊ธฐ๋ฅ / ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ / ๋ฉ๋ชจ์ฅ ์๋ฒ ๋ง๋ค๊ธฐ / DataBase(MySQL)๊ณผ SQL ์์ฑ / Jdbc Template ๋ฑ์ ๋ฐฐ์ ๋ค.
+ ์ด์ ๋ถํฐ ๋ฃ๋ ๊น์ํ๋์ Spring ์ ๋ฌธ ๊ฐ์๋ฅผ ์์นจ์ ๋ชจ๋ ๋ค์๋ค. Sparta 1์ฃผ์ฐจ ๊ฐ์์ ์์กด๊ด๊ณ๋ฅผ ์ค์ ํ๋ ๋ถ๋ถ์์ ์์ดํ๋ค. Sparta ๊ฐ์์ ๊ฒฝ์ฐ, Entity๋ฅผ ์ค์ ํ๊ณ , RequestDTO์ ResponseDTO๋ฅผ ํตํด Controller์์ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ค๋ค. ๋ฐ๋ฉด ๊น์ํ๋์ ๊ฐ์๋ Entity(Domain)๋ฅผ Repository(interface) ๊ตฌํ์ฒด์ธ JPARepository๋ฅผ ํตํด (EntityManager) ์ง์ ๋ค๋ค๋ค. ์กฐ์ ๋ถ๊ณผ ์๊ธฐ๋ฅผ ๋๋๋ค๊ฐ DTO๋ ์์ ๋ค๊ณผ ๊ฐ์ ๋ฏธ๋ ํ๋ก์ ํธ์์๋ ๊ตณ์ด ๋๋ ์ ํ ํ์๊ฐ ์์ ๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ด ๋ค์๋ค. 2์ฃผ์ฐจ ๊ฐ์ ๋ชฉ์ฐจ์ JPA์ ์์์ฑ ์ปจํ ์คํธ๋ฅผ ์ ๋ชฉ์ผ๋ก ํ๋ ๋ถ๋ถ์ด ์์๋๋ฐ, ๊ทธ ์ชฝ์์ ๋ค๋ฃฐ ๊ฒ ๊ฐ๋ค.
+ DTO๋ DAO, VO์ ๊ฐ์ ์ฉ์ด๋ค์ด ๋๊ฑฐ ๋ฑ์ฅํ์ฌ, ์ ๋ฆฌํ๋ค.