개발 공부

MVC1 / MVC2 예제

준군 2020. 8. 3. 15:45

MVC (Model-View-Controller) 는 애플리케이션의 각 요소를 물리적으로 분리함으로써 개발자가 코드의 관리를 더욱 쉽게 할수 있게 해준다. 아래는 MVC1의 예제이다. HTML (View)부분과 Java (Contorller) 부분의 경계가 명확하다는 것을 볼수 있다. 이는 Java코드를 HTML 중간에 껴넣어서 코드가 복잡해지는 불상사를 막을 수 있다. 예제에서는 num이 10보다 크거나 같거나 아니면 같은 지를 리턴해준다.

 

mvc1

 

아래는 MVC2의 예제이다. Controller 부분과 View부분을 아얘 물리적으로 분리시켜놓는다. 각 요소의 독립성을 증가시킴으로써 개발자가 더 편하게 볼수있도록 한것이다. 

 

(좌) MVC2 servlet  (우) mvc2 jsp

보다시피 result 문자열을 result 라는 곳에 저장시켜 mvc2.jsp로 fowarding을 하는 방식이다. JSP에서는 간단히 request를 불러와 원하는 정보를 불러오면 된다. 저자는 처음에 작은 실수를 해서 실행이 안됬었는데 @WebServlet("/MVC2") 를 @WebServlet("/mvc2") 로 써서 실행이 안됬었다. 클래스명과 WebServlet annotation 부분을 똑같이 써야 servlet 에서 실행이 가능하다. (form action을 사용할 때는 다르지만말이다) 아래는 실행 결과이다.

 

(좌) 쿼리 X   (우) 쿼리 O