1. 스크립 (Scripe)
스크립 : 스크립트릿 + 선언 + 표현식
1) 스크립트릿 (Scriptlet) : <% JAVA 코드 기술 %>
- JSP 페이지에서 JAVA언어를 사용
- 거의 모든 JAVA코드 사용 가능
① 스크립트릿 작성
<%
int i = 0;
while(true){
i++;
out.println("2 * " + i + " = " + (2 * i) + "<br />");
%>
=========<br />
<%
if(i >= 9) break;
}
%>
② HTML로 변환된 모습
2 * 1 = 2<br />
=========<br />
2 * 2 = 4<br />
=========<br />
2 * 3 = 6<br />
=========<br />
2 * 4 = 8<br />
=========<br />
2 * 5 = 10<br />
=========<br />
2 * 6 = 12<br />
=========<br />
2 * 7 = 14<br />
=========<br />
2 * 8 = 16<br />
=========<br />
2 * 9 = 18<br />
=========<br />
③ 실제 웹 브라우저 출력 화면
2 * 1 = 2
=========
2 * 2 = 4
=========
2 * 3 = 6
=========
2 * 4 = 8
=========
2 * 5 = 10
=========
2 * 6 = 12
=========
2 * 7 = 14
=========
2 * 8 = 16
=========
2 * 9 = 18
=========
2) 선언 (Declaration) : <%! JAVA 코드 기술 %>
- JSP 페이지 내에서 사용되는 변수 및 메소드를 선언할 때 사용
- 전역적으로 사용됨
① 선언문 작성
<%!
int i = 10;
String str = "ABCDE";
%>
<%!
public int sum(int a, int b) {
return a+b;
}
%>
<%
out.println("i = " + i + "<br />");
out.println("str = " + str + "<br />");
out.println("sum = " + sum(1,5) + "<br />");
%>
② HTML로 변환된 모습
i = 10<br />
str = ABCDE<br />
sum = 6<br />
③ 실제 웹 브라우저 출력 화면
i = 10
str = ABCDE
sum = 6
3) 표현식 (Expression) : <%= JAVA 코드 기술 %>
- JSP 페이지 내에서 사용되는 변수의 값 또는 메소드 호출 결과값을 출력할 때 사용
- 결과값은 String 타입
- ; (세미콜론)을 사용할 수 없음
① 표현식 작성
<%!
int i = 10;
String str = "abc";
private int sum(int a, int b) {
return a+b;
}
%>
<%= i %><br />
<%= str %><br />
<%= sum(1, 5) %>
② HTML로 변환된 모습
10<br />
abc<br />
6
③ 실제 웹 브라우저 출력 화면
10
abc
6
2. 지시자 (Directive)
JSP 페이지의 전체적인 속성을 지정할 때 사용 : <%@ 속성 %>
1) page 지시자 : <%@page 속성="값 %>
- 페이지의 속성을 지정할 때 사용
- 사용할 언어, 인코딩 타입 등
- import문
① page 지시자를 이용해 Arrays를 impor하여 사용한 모습
<%@page import="java.util.Arrays"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
<%
int[] iArr = {10, 20, 30};
out.println(Arrays.toString(iArr));
%>
</body>
</html>
② HTML로 변환된 모습 (page 지시자 부분은 공백으로 표현됨)
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
[10, 20, 30]
</body>
</html>
③ 실제 웹 브라우저 출력 화면
[10, 20, 30]
2) include 지시자 : <%@ include file="*.jsp" %>
- 현재 페이지 내에 다른 페이지를 삽입할 때 사용
- file 속성을 이용
① include.jsp 파일
<h1> include.jsp 페이지 입니다. </h1><br />
<%@ include file="include01.jsp" %>
<h1> 다시 include.jsp 페이지 입니다. </h1><br />
② include01.jsp 파일
<h1> include01.jsp 페이지 입니다. </h1><br />
③ HTML로 변환된 모습 (현재 페이지의 body 태그 안에 다른 페이지가 통째로 삽입됨)
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
<h1> include.jsp 페이지 입니다. </h1><br />
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
<h1> include01.jsp 페이지 입니다. </h1><br />
</body>
</html>
<h1> 다시 include.jsp 페이지 입니다. </h1><br />
</body>
</html>
④ 실제 웹 브라우저 출력 화면
include.jsp 페이지 입니다.
include01.jsp 페이지 입니다.
다시 include.jsp 페이지 입니다.
3) taglib 지시자
- 태그 라이브러리 : 사용자가 만든 tag들
- tablib 지시자 : 태그 라이브러리의 태그를 가져올 때 사용
- uri 속성 : 태그 라이러리의 위치 값
- prefix 속성 : 태그를 가리키는 이름 값
3. 주석 (Comments)
1) HTML 주석
<!-- comments -->
- 테스트 용도 및 프로그램 설명 용도
- 소스 보기에 주석이 남아 있음
① HTML 파일
<!-- <h1>여기는 주석 입니다.</h1> -->
<h1>여기는 주석이 아닙니다.</h1>
② 소스 보기
<!-- <h1>여기는 주석 입니다.</h1> -->
<h1>여기는 주석이 아닙니다.</h1>
③ 실제 웹 브라우저 출력 화면
여기는 주석이 아닙니다.
2) JSP 주석
<%-- comments -->
- 테스트 용도 및 프로그램 설명 용도
- JAVA언어의 주석도 사용
- 소스 보기에 주석이 보이지 않음
① JSP 파일
<%-- 여기는 주석 입니다. --%>
여기는 주석이 아닙니다.
② 소스 보기
여기는 주석이 아닙니다.
③ 실제 웹 브라우저 출력 화면
여기는 주석이 아닙니다.
'강의 정리 > JSP & Servlet (Seoul Wiz)' 카테고리의 다른 글
12. 액션태그 (0) | 2019.08.06 |
---|---|
11. JSP (3) (0) | 2019.08.05 |
9. JSP (1) (0) | 2019.08.04 |
8. Servlet (4) (0) | 2019.08.03 |
7. Servlet (3) (0) | 2019.08.03 |