๐Q-1
์ฒ์์ ์ธ๋ฑ์ค์์ MVC ๊ฒ์ํ ๋๋ฅด๋ฉด ๋ฆฌ์คํธ๊ฐ ๋ฑ ๋์จ๋ค. ๊ทธ๊ฒ @WebServlet("/board/board.do") ์ด๊ฑธ๋ก ์ปจํธ๋กค์์ ์ง์ ์ํด์ค์ ๋์ค๋ ๊ฐ๋ ์ธ๊ฐ์ ?
โA-1
@WebServlet("/board/board.do") == WEB.xml์ ๋งคํํ๋๊ฑฐ๋ ๊ฐ์ ๊ฐ๋ ์ด๋ค.
๐Q-2
MVC๋ฅผ ๊ณต๋ถํ๋ฉด์ Service ๊ฐ๋ ์ด ๋๋ฌด ๋ํดํ๋ค. ๊ทธ ๊ฒฐ๊ณผ DAO - Controller ์ฌ์ด์์ ์ค๊ฐ์ญํ ํ๋๊ฐ๋ ์ธ ๊ฒ ๊ฐ๋ค. ์ด๊ฒ์ ์ด๋ป๊ฒ ์ดํดํ๋ฉด ์ข์๊น์ ?
โA-2
Dao๊ฐ์ฒด์๋ ์ฐ๋ฆฌ๊ฐ ํ ์์ ์์๋ ๋๋น์ ์ฐ๊ฒฐํ๊ณ ๋๋น์์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฉ์๋๊ฐ ๊ฐ๊ฐ ์๋ค. Service ํด๋์ค๋ dao์ ์๋ ๋ฉ์๋๋ฅผ ํธ์ถํด์(์ ๋ฌด๋ก์ง์ ๋ฐ๋ผ์ ์ฌ๋ฌ ๋ฉ์๋๋ฅผ ํธ์ถํ ์ ๋ ์์) ์ปจํธ๋กค๋ฌ์ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ์ ธ๋ค ์ค๋ค.
๐Q-3
jsp (VIEW)์์ ๋งค๊ฐ๋ณ์๋ฅผ ํธ์ถํด์ ์ปจํธ๋กค๋ฌ ํด๋์ค๋ก ์ด๋ํ๋ค. ๊ทผ๋ฐ ๊ทธ ๊ฐ๋ ๋ฐฉํฅ์ด import="java.util.*, mvc.domain.Board"%> DTO๋ง ์ํฌํธํ๋๋ฐ ์ปจํธ๋กค๋ฌ๋ก ์ด๋ป๊ฒ๊ฐ๋์ง ๊ถ๊ธํฉ๋๋ค.
โA-3
์นํ์ด์ง์ ์๋ ๋ชจ๋ ๋งํฌ(href)๊ฐ ์ ๋ถ board.do(์ปจํธ๋กค๋ฌ)๋ก ์ง์ ๋์ด์๊ธฐ ๋๋ฌธ์ด๋ค.
๐Q-4
Service๊ฐ ์ ์์ด์ผํ๋์ง ์ ์ดํด๊ฐ ์๊ฐ๋๋ค. VIEW - CONTROLLER - (SERVICE) - DAO๋ก ๋ฐ๋ก ๊ฐ๋ฉด ์๋๋์ ?
โA-4
๋จ์ํ ๊ฒ์ํ / ์ฃผ์๋ก์ ๊ฐ๋ฅํ์ง๋ง, ๋์ค์ ๋๋ฉด ํ์ฅ์ฑ์ ์ํด ๋ฐ๋์ ์จ์ค์ผํ๋ค. (๐ฏTIP ์ฐธ๊ณ )
Service > DAO ๊ฐ๋ ์ ์ผ๋ก๋ Service๊ฐ ๋ ํฐ ๋ฒ์์์๋ค. ์๋ฅผ๋ค๋ฉด A๊ฐ B์๊ฒ ์ด์ฒด๋ฅผ ํ๋ค๊ณ ๊ฐ์ ์ํด๋ณด์. ํ transaction์ด ์ด๋ฃจ์ด ์ง ๋, A๋ -minus๊ฐ ์คํ๋์ด์ผํ๊ณ , B๋ +plus๊ฐ ์คํ์ด ๋์ด์ผํ๋ค. Serviceํด๋์ค์์ ํ๊ฐ์ ๋ฉ์๋์์ dao.plus(); dao.minus();๋ฅผ ์คํํ๋ฉด๊ฒ๋๋ค๋ฉด, ์๋ก ๋ถ๋ฆฌ๋์ด ๊ฐ์์ ์ญํ ์ ์ง์คํ ์ ์๊ฒ๋ํ์ฌ ๊ฐ๋ฐ์ ํ๊ณ ๊ทธ๋ ๊ฒ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ ๋ค๋ฉด, ์ ์ง๋ณด์์ฑ, ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ฅ์ฑ, ๊ทธ๋ฆฌ๊ณ ์ ์ฐ์ฑ์ด ์ฆ๊ฐํ๊ณ , ์ค๋ณต์ฝ๋ฉ์ด๋ผ๋ ๋ฌธ์ ์ ๋ํ ์ฌ๋ผ์ง๊ฒ ๋๋ค.