gwooden_코린이

MVC 모델/패턴 모델 1 본문

JSP&Servlet

MVC 모델/패턴 모델 1

gwooden22 2023. 1. 19. 15:31
728x90

1. MVC 모델1

Model

View

Controller

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<h3> 상품 검색 페이지 </h3>
	
	<form method="get" action="search_mvc.jsp">
		연령대 <input type="text" name="age">
		<br>
		카테고리 <select name="opt">
				<option value="상의">상의 </option>
				<option value="하의">하의 </option>
				<option value="악세사리">악세사리 </option>
			</select>
			<br>
			선호하는 색상 <input type="checkbox" name="color" value="빨강"> 빨강
				<input type="checkbox" name="color" value="주황"> 주황
				<input type="checkbox" name="color" value="노랑"> 노랑
				<input type="checkbox" name="color" value="파랑"> 파랑
				<input type="checkbox" name="color" value="검정"> 검정
				<br>
			<input type="submit" value="검색">
	</form>
</body>
</html>

<!-- mvc 1형식 모델 시작 부분 -->
	<!-- Controller 부분 -->
	<%
		int age = Integer.parseInt(request.getParameter("age"));
		String opt = request.getParameter("opt");
		String[] list = request.getParameterValues("color");
	%>
		<!-- age = age /  opt = opt  / list = list  <-- 이런 것들이 컨트롤로와 뷰를 잇는 model -->
	
	<!-- View 부분 -->
		<h3> <%= age %> 세가 가장 많이 구매한 <%= opt %>들을 조회합니다. </h3>
		<h2> 선호하는 색상
<!-- mvc 1형식 모델 끝 부분 -->

 

MVC 모델 1 방식으로 바꾼 코드 내용

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>

<!-- Controller -->
	<%
		//Model 데이터들
		int age = Integer.parseInt(request.getParameter("age"));
		String opt = request.getParameter("opt");
		String[] colors = request.getParameterValues("color");
		
		String str = ""; //색상의 결과값을 저장하는 변수 (model)
		
		if(colors == null) {
			str = "없음";
		} else {
			for(String color : colors) {
				
				str += color + " ";
			}
			str += "입니다.";
		}
	%>

	<!-- View -->
		<h3> <%= age %> 세가 가장 많이 구매한 <%= opt %>들을 조회합니다. </h3>
		<h2> 선호하는 색상 : <%=str%> </h2>


</body>
</html>
728x90
Comments