인프런 강의 학습/MVC 프레임워크_나프1탄

인프런 MVC 프레임워크는 내손에 27일차 : MVC02_01 JSP 구성요소 알아보기

현호s 2021. 6. 7. 20:14
반응형

# MVC02_01 JSP 구성요소 알아보기

  • MVC02 : JSP와 Model 만을 이용한 회원관리 만들기.

## MVC02 버전 신규 생성

  • File > New > Dynamic Web Project 클릭
  • Project Name은 MVC02 입력 후 Next > src 확인 후 Next > Context root : MVC02, Content directory : WebContent 확인 후 밑에 Generate web.xml deployment descriptor 체크 후 Finish.

## Context 등록

  • Servers > 톰캣 우클릭 > Add and Remove 클릭
  • Available 에 있는 MVC02 를 클릭 후 Add 눌러서 오른쪽 Configured로 이동 후 Finish.

## DB 연동 jar파일 가져오기

  • mysql-connector-java-5.1.31.jar 파일을 MVC02 > WebContent > WEB-INF > lib 에 추가.

## 필요한 패키지 가져오기

  • 기존 MVC01 에서 사용하던 kr.bit.db 패키지, kr.bit.model 패키지 MVC02로 가져오기.

## JSP (Java Server Page)

  • 자바 서버에서 구동되는 웹 페이지
  • Servlet도 자바로 된 웹 프로그래밍인데, Controller의 역할을 갖고있다.
  • JSP의 경우 View (프리젠테이션) 역할을 갖고 있다.

### JSP 생성

  • MVC02 > WebContent 우클릭 > New > JSP File 클릭
  • File name : test01.jsp 입력 후 Finish 클릭하면 아래와 같은 기본 골격이 만들어 진다.
<%@ 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>

</body>
</html>

### JSP 구성 요소 

  • <% %> 를 사용하는 스크립트적인 요소(=프로그래밍적 요소)

1. 지시자 : <%@  %> 형태이며, 지시자의 종류는 아래와 같다.

1. page 지시자
<%@page  %>

2. include 지시자
<%@include  %>

3. taglib 지시자
<%taglib  %>

2. 스크립트릿 : <%  %> 의 형태

3. 출력식 : <%=  %> 의 형태

4. 선언문 : <%!  %> 의 형태

5. JSP 주석 : <%--  --%> 의 형태

### JSP 이용한 1 ~ 10 까지의 총합

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%
	int sum = 0;

	for ( int i = 1; i <= 10; i++ ) {
		sum += i;
	}
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table border="1">
	<tr>
		<td>1 ~ 10까지의 총합</td>
		<td><%=sum %></td>
	</tr>
</table>
</body>
</html>

### JSP 이용한 s ~ e 까지의 총합 구하는 함수

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%-- 두 수 사이의 총합을 구하는 메서드 --%>
<%!
	public int hap(int s, int e) {
		int sum = 0;
	
		for ( int i = s; i <= e; i++ ) {
			sum += i;
		}
		
		return sum;
	}
%>
<%
	int sum = 0;

	for ( int i = 1; i <= 10; i++ ) {
		sum += i;
	}
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table border="1">
	<tr>
		<td>1 ~ 10까지의 총합</td>
		<td><%=sum %></td>
	</tr>
	<tr>
		<td>55 ~ 350까지의 총합</td>
		<td><%=hap(55, 350) %></td>
	</tr>
</table>
</body>
</html>
반응형