각진 세상에 둥근 춤을 추자
[JSP] 지시어(Directive) 본문
지시어는 JSP 페이지를 자바(서블릿)코드로 변환하는 데 필요한 정보를 JSP 엔진에 알려준다.
주로 스크립트 언어나 인코딩 방식 등을 설정하며 지시자 혹은 디렉티브로 부른다.
지시자의 기본 구문은 다음과 같다.
<% 지시어 종류 속성1="값1" 속성2="값2" ... %>
지시어의 종류는 크게 세 가지가 있다.
1. page 지시어= JSP 페이지에 대한 정보를 설정한다.
2. include 지시어= 외부 파일을 현재 JSP 페이지에 포함시킨다.
3. taglib 지시어= 표현 언어에서 사용할 자바 클래스나 JSTL을 선언한다.
1. page 지시어
page 지시어는 JSP 페이지에 대한 정보를 설정한다.
속성 | 내용 | 기본값 |
info | 페이지에 대한 설명을 입력한다. | - |
language | 페이지에서 사용할 스트랩팅 언어를 지정한다. | java |
contentType | 페이지에서 생성할 MIME 타입을 지정한다. | - |
pageEncoding | charset과 같이 인코딩을 지정한다. | ISO-8859-1 |
import | 페이지에서 사용할 자바 패키지와 클래스를 지정한다. | - |
session | 세션 사용 여부를 지정한다. | true |
buffer | 출력 버퍼의 크기를 지정한다. | 8KB |
autoFlush | 출력 버퍼가 모두 채워졌을 때 자동으로 비울 지를 결정한다. | ture |
trimDirective Whitespaces |
지시어 선언으로 인한 공백을 제거할지 여부를 지정한다. | flase |
errorPage | 해당 페이지에서 에러가 발생했을 때 발생 여부를 보여줄 페이지를 지정한다. | - |
isErrorPage | 해당 페이지가 에러를 처리할지 여부를 지정한다. | false |
[import] 속성
java.lang 패키지에 속하지 않은 클래스를 JSP 문서에 사용하기 위해서는 page 지시어의 import 속성을 이용할 수 있다.
<%-- 필요한 외부 클래스 임포--%>
<%@page import="java.util.Date"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@ page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>page 지시어 - import속성으로 외부 클래스 불러오기</title>
</head>
<body>
<%
// 외부 클래스 생성
Date today = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
String todayStr = dateFormat.format(today);
out.println("오늘 날짜: " +todayStr);
%>
</body>
</html>
[Info] 속성
페이지에 대한 설명을 입력한다.
<%@ page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page info="©copyright this-circle-jeong" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>page 지시어 - info속성</title>
</head>
<body>
<p>
page info : <%= getServletInfo() %>
</p>
</body>
</html>
2. include 지시어
웹 사이트에서 반복되는 부분을 별도의 파일에 작성해 두고 필요한 페이지에서 include 지시어로 포함시킬 수 있다.
include 지시어의 형식은 다음과 같다.
<%@ include file="포함할 파일의 경로"%>
예제를 통해 include 지시어에 대해 이해해 본다.
먼저 포함시킬 첫 번째 파일을 생성한다.
다른 JSP 파일에 포함시킬 페이지이므로 <html>과 같은 태그는 모두 제거한다.
<%@page import="java.time.LocalDateTime"%>
<%@page import="java.time.LocalDate"%>
<%@ page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%
// 오늘 날짜
LocalDate today = LocalDate.now();
// 내일 날짜
LocalDateTime tomorrow = LocalDateTime.now().plusDays(1);
%>
include를 실행시킬 파일을 생성한다.
<%@ page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%@ include file = "IncludeFile.jsp" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Include 지시어</title>
</head>
<body>
<%
out.println("오늘 날짜: "+today);
out.println("<br/>");
out.println("내일 날짜: "+tomorrow);
%>
</body>
</html>
'JSP' 카테고리의 다른 글
[JSP] response 객체 (0) | 2022.10.06 |
---|---|
[JSP] 내장 객체(Implicit Object) - request (0) | 2022.10.05 |
[JSP] JSP 파일 기본 구조 (0) | 2022.10.05 |
[JSP] Eclipse JSP File 템플릿 변경하기 (0) | 2022.10.05 |
[JSP] JSP 파일 생성 (0) | 2022.10.04 |