JSP(JavaServer Pages)에서 지시문(Directive)은 해당 JSP 페이지가 변환되어 생성되는 서블릿 클래스의 전체 구조에 영향을 미치는 요소입니다. 지시문은 일반적으로 다음과 같은 형식으로 작성됩니다.
<%@ directive attribute = "value" %>
지시문의 기본 문법
하나의 지시문에는 여러 개의 속성을 지정할 수 있으며, 각 속성은 키=값 쌍의 형태로 나열하고 쉼표(,)로 구분합니다.
참고로 @ 기호와 지시문 이름 사이의 공백, 그리고 마지막 속성과 닫는 %> 사이의 공백은 선택 사항입니다. 즉, 있어도 되고 없어도 됩니다.
JSP 지시문 태그의 3가지 유형
JSP가 지원하는 지시문 태그는 다음과 같이 세 가지입니다.
| 번호 | 지시문 및 설명 |
|---|---|
| 1 | <%@ page ... %> 페이지에 종속적인 속성들을 정의합니다. 대표적으로 스크립팅 언어(scripting language), 오류 페이지(error page), 버퍼링(buffering) 관련 설정 등이 여기에 해당합니다. |
| 2 | <%@ include ... %> JSP가 서블릿으로 변환되는 번역(translation) 단계에서 지정한 파일을 페이지에 포함시킵니다. |
| 3 | <%@ taglib ... %> 해당 페이지에서 사용할 커스텀 액션(custom actions)을 담고 있는 태그 라이브러리(tag library)를 선언합니다. |
각 지시문 활용 예시
page 지시문은 contentType, import, session 등 다양한 속성을 통해 페이지 환경을 제어하고, include 지시문은 헤더나 푸터처럼 반복적으로 사용되는 코드를 재사용할 때 유용합니다. 또한 taglib 지시문은 JSTL 같은 표준 태그 라이브러리나 직접 만든 커스텀 태그를 사용할 때 반드시 필요합니다.