Web Application Architecture
โข
JSP๋ฅผ ์ด์ฉํ์ฌ ๊ตฌ์ฑํ ์ ์๋ Web Application Architecture๋ ํฌ๊ฒ model1๊ณผ model2๋ก ๋๋๋ค.
โข
JSP๊ฐ client ์์ฒญ์ ๋ํ Logic ์ฒ๋ฆฌ์ response page(view)์ ๋ํ ์ฒ๋ฆฌ๋ฅผ ๋ชจ๋ ํ๋๋, response page(view)์ ๋ํ ์ฒ๋ฆฌ๋ง ํ๋์ง๊ฐ ๊ฐ์ฅ ํฐ ์ฐจ์ด์ ์ด๋ค.
Web Application Architecture - Model1
โข
view์ logic์ JSP ํ์ด์ง ํ๋์์ ์ฒ๋ฆฌํ๋ ๊ตฌ์กฐ
โข
client๋ก๋ถํฐ ์์ฒญ์ด ๋ค์ด์ค๊ฒ ๋๋ฉด JSP ํ์ด์ง๋ java beans๋ ๋ณ๋์ service class๋ฅผ ์ด์ฉํ์ฌ ์์
์ ์ฒ๋ฆฌ, ๊ฒฐ๊ณผ๋ฅผ client์ ์ถ๋ ฅํ๋ค.
์ฅ์
โข
๊ตฌ์กฐ๊ฐ ๋จ์ํ๋ฉฐ ์ง๊ด์ ์ด๊ธฐ ๋๋ฌธ์ ๋ฐฐ์ฐ๊ธฐ ์ฝ๋ค.
โข
๊ฐ๋ฐ ์๊ฐ์ด ๋น๊ต์ ์งง๊ธฐ ๋๋ฌธ์ ๊ฐ๋ฐ ๋น์ฉ์ด ๊ฐ์ํ๋ค.
๋จ์
โข
์ถ๋ ฅ์ ์ํ view(html) ์ฝ๋์ ๋ก์ง ์ฒ๋ฆฌ๋ฅผ ์ํ java ์ฝ๋๊ฐ ์์ฌ ์๊ธฐ ๋๋ฌธ์ JSP ์ฝ๋ ์์ฒด๊ฐ ๋ณต์กํด ์ง๋ค.
โข
JSP ์ฝ๋์ Back-End(Developer)์ Front-End(Designer)๊ฐ ํผ์ฌ๋๊ธฐ ๋๋ฌธ์ ๋ถ์
์ด ํ๋ค์ด์ง๋ค.
โข
project์ ๊ท๋ชจ๊ฐ ์ปค์ง๊ฒ ๋๋ฉด ์ฝ๋๊ฐ ๋ณต์กํด ์ง๋ฏ๋ก ์ ์ง๋ณด์ ํ๊ธฐ๊ฐ ์ด๋ ต๋ค.
โข
ํ์ฅ์ฑ(์ ๊ธฐ์ ๋์
, framework etc...)์ด ๋์๋ค.
Web Application Architecture - Model2
โข
MVC(Model-View-Controller) Pattern์ web ๊ฐ๋ฐ์ ๋์
ํ ๊ตฌ์กฐ
โข
๋ชจ๋ ์ฒ๋ฆฌ๋ฅผ JSP ํ์ด์ง์์ ํ๋ ๊ฒ์ด ์๋๋ผ, client ์์ฒญ์ ๋ํ ์ฒ๋ฆฌ๋ฅผ servlet์ด, logic ์ฒ๋ฆฌ๋ java class(Service, Dao,,,) client์๊ฒ ์ถ๋ ฅํ๋ response ํ์ด์ง๋ฅผ JSP๊ฐ ๋ด๋นํ๋ค.
์ฅ์
โข
์ถ๋ ฅ์ ์ํ view(html) ์ฝ๋์ ๋ก์ง ์ฒ๋ฆฌ๋ฅผ ์ํ java ์ฝ๋๊ฐ ๋ถ๋ฆฌ ๋์๊ธฐ ๋๋ฌธ์ ์ฝ๋๊ฐ ๋ณต์กํ์ง ์๋ค.
โข
ํ๋ฉด๋จ๊ณผ Logic ๋จ์ด ๋ถ๋ฆฌ ๋์๊ธฐ์ ๋ถ์
์ด ์ฉ์ดํ๋ค.
โข
๊ธฐ๋ฅ์ ๋ฐ๋ผ code๊ฐ ๋ถ๋ฆฌ ๋์๊ธฐ ๋๋ฌธ์ ์ ์ง๋ณด์๊ฐ ์ฌ์์ก๋ค. (์๋ฌ๊ฐ ๋๋ ์ด๋์์ ๋ฌ๋์ง ์ฝ๊ฒ ์ฐพ์)
โข
ํ์ฅ์ฑ์ด ๋ฐ์ด๋๋ค. (Mybatis ๋ฑ)
๋จ์
โข
๊ตฌ์กฐ๊ฐ ๋ณต์กํ์ฌ ์ด๊ธฐ ์ง์
์ด ์ด๋ ต๋ค.
โข
๊ฐ๋ฐ ์๊ฐ์ ์ฆ๊ฐ๋ก ๊ฐ๋ฐ ๋น์ฉ์ด ์ฆ๊ฐํ๋ค.