<지시자(directive)>
1)page
: <%@(지시어 영역) page(지시자) 속성 %>
JSP문서 제일 위의 <%@ @> 안의 지시 영역이 page 지시 영역이다.
-page 지시어에서 사용되는 속성
info = "문서정보"
language = "java"
contentType = "text/html;" <- 내용물이 문자와 태그
import = "패키지명.클래스명" <--- 이 속성만 문서 내 중첩 가능
session = "t/f" <- t: 생성-호출-소멸 가능. default는 true고 페이지에서 session을 사용할 수 있는 지 없는 지 나타내는 속성
buffer = "크기" <- 기본 8kb
autoFlush = "t/f" <- 버퍼가 지정된 크기에 도달하면 자동으로 응답(기본값 true)
isThreadSafe = "t/f" <- thread safe를 지원 하는 지 여부(기본값 true)
-errorPage = "경로 파일명" <- 예외를 몰아서 지정된 페이지에서 예외 처리, exception 객체 사용 가능
isErrorPage = "t/f" <- 에러 페이지로 지정
pageEncoding = "페이지의 캐릭터 인코딩값" <- 응답할 때 인코딩값. 한글: euc-kr
2)include
: <%@ include(지시자) file(속성) = "경로/파일명" %>
홈페이지에서 항상 공통으로 적용되는 파일을 포함시킬 때, 매번 같은 내용을 입력하지 않고 include 지시자를 사용해 별도로 만든 페이지를 병합한다. 자주 사용되지는 않는다.
1. 문서를 병합할 때
: 여러 개의 문서가 병합해 하나의 문서처럼 실행
2. 소스를 병합한 뒤 컴파일
: 동일한 영역 내에 같은 이름의 변수가 여러 번 선언될 수 없기 때문에, 각각의 파일에서 동일한 변수명을 선언해 충돌하는 상황을 방지하고자 소스를 먼저 병합한 뒤 컴파일한다.
3. 전송값은 병합된 문서 어디서나 받을 수 있다.
4. 병합 후 결과가 하나의 문서처럼 보여야 한다.
ex. 변수명, 태그 등
-> 사용하기 까다롭기 때문에 주의를 요하는 기능
<예제>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<%@ 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>
<h1>Directive Example4</h1>
include 지시자의 body부분입니다.
</body>
</html>
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
병합할 문서
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<%@ 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>
include 지시자의 Top 부분입니다.
<hr/>
</body>
</html>
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
병합시킬 문서(directiveTop.jsp)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
<%@ 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>
<%
Date date = new Date();
%>
<hr/>
include 지시자의 Bottom 부분입니다.<p/>
<%= date.toLocaleString() %>
</body>
</html>
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
병합시킬 문서(directiveBottom.jsp)
결과
3)taglib
'20.03 ~ 20.08 국비교육 > JSP' 카테고리의 다른 글
내부 객체(Implicit Object) (0) | 2020.04.23 |
---|---|
액션(Action) (0) | 2020.04.23 |
폼 전송 (0) | 2020.04.22 |
JSP의 기초 문법 (0) | 2020.04.21 |
JSP 소개 (0) | 2020.04.21 |