티스토리 뷰

Servlet JSP

JSP MVC model1

Programmers 2021. 4. 26. 19:49
반응형

MVC model이란?

MVC
stands for Model View and Controller. It is adesign patternthat separates the business logic, presentation logic and data.
-> MVC- Moderl, View, Controller의 합성어로 애플리케이션을 세 가지의 역할로 구분한 디자인 패턴이다.
->서로 분리되어 각자의 역할에 집중할 있도록 개발을 하고 그렇게 애플리케이션을 만들면, 유지보수성, 애플리케이션의 확장성, 그리고 유연성이 증가하고, 중복 코딩이라는 문제점 또한 사라지게 된다.

디자인 패턴은 소프트웨어의 개발 방법을 공식화한 것이다. 소수의 뛰어난 엔지니어가 해결한 문제를 다수의 엔지니어들이 처리할 수 있도록 한 규칙이면서, 구현자들 간의 커뮤니케이션의 효율성을 높이는 기법이다.

  • Model(출력 데이터): 애플리케이션이 "무엇"을 할 것인지를 정의한다. 내부 비즈니스 로직을 처리하기 위한 역할로 DB의 테이블과 대응하는 경우가 많다.(처리되는 알고리즘, DB와 상호작용(CRUD), 데이터 등등..)
  • View(출력 담당)[HTML코드]: 사용자가 보게 될 결과 화면을 출력한다. (html/css/javasript 등을 모아둔 컨테이너이다.)
  • Controller(입력과 제어를 담당)[자바 코드]: 사용자의 입력 처리와 흐름 제어를 담당한다.(사용자가 접근한 URL에 따라 사용자의 요청사항을 파악한 후, 그 요청에 맞는 데이터를 Model에 의뢰하고, 데이터를 View에 반영해서 사용자에게 알려준다.)
  • 모델 1: 비즈니스 로직 영역(Controller)에 프렌젠테이션 영역(View)을 같이 구현하는 방식이다.
  모델1
장점 쉽고 빠른 개발
단점 유지보수가 어려움

 

기존의 홀수 짝수 코드를 MVC model1으로 수정

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    	   
 <!--입력 코드--------------------------------------------------------->
<% 	int num = 0;
	String value = "";
	String num_ = request.getParameter("num");
		if(num_ != null && !num_.equals(""))
			num = Integer.parseInt(num_);
		if(num%2 != 0)
			value = "홀수";
		else
			value = "짝수";
		 
%>		
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	
<!--출력 코드--------------------------------------------------------->
	<%= value %> 입니다.
	
</body>
</html>

 

 

이전보다 훨씬 간결한 코드를 볼 수 있다.

반응형

'Servlet JSP' 카테고리의 다른 글

JSP EL(Expression Language)  (0) 2021.04.27
JSP MVC model2  (0) 2021.04.26
JSP 스파게티 Spaghetti 코드  (0) 2021.04.26
JSP로 서블릿 간단 출력 예제  (0) 2021.04.26
JSP 내장객체  (0) 2021.04.26
댓글
공지사항