일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- DML
- SQL_용어정리
- Spring_오류정리
- 자바
- 인스턴스
- 이클립스
- spring
- 아파치톰캣
- json
- Linux
- vb.net
- java
- Linux_명령어정리
- MySQL
- git
- 인덱스
- 배열
- asp.net
- Spring_에러정리
- 다이어그램
- Git_정리
- github
- Git_명령어정리
- JavaScript
- workbench
- HTML
- CSS
- 자바스크립트
- SQL
- jsp
- Today
- Total
데브마우스
[JSP] 디렉티브 태그의 개요와 page 디렉티브 태그 정리 본문
디렉티브 태그란 무엇인가요?
디렉티브 태그는 JSP에서 페이지를 어떻게 처리할 것인지를 설정하는 태그입니다. 디렉티브 태그는 JSP의 처리 방식을 설정합니다. JSP 페이지가 서블릿 프로그램에서 서블릿 클래스로 변환할 때 JSP 페이지와 관련된 정보를 JSP 컨테이너에 지시하는 메시지입니다.
디렉티브 태그는 3가지 종류의 태그가 있습니다.
디렉티브 태그 종류 | 작성 방법 | 설명 |
page | <%@ page ··· %> | - JSP 페이지에 대한 정보를 설정합니다. |
include | <%@ include ··· %> | - JSP 페이지의 특정 영역에 다른 문서를 포함합니다. |
taglib | <%@ taglib ··· %> | - JSP 페이지에서 사용할 태그 라이브러리를 설정합니다. |
page 디렉티브 태그의 종류
page 디렉티브 태그는 해당 JSP 페이지에 대한 정보를 설정하는 태그입니다.
디렉티브 태그가 가질 수 있는 정보는 생성할 콘텐츠 유형의 문서(인코딩 여부), 사용할 자바의 클래스, 오류 페이지 설정, 세션 사용 여부, 출력 버퍼의 존재 유무 등과 같이 JSP 컨테이너가 JSP 페이지를 실행하는 데 필요한 정보를 설정할 수 있습니다.
page 디렉티브 태그는 일반적으로 JSP 페이지의 최상단에 선언하는 것을 권장합니다.
page 디렉티브 태그의 종류 | ||
속성 | 설명 | 속성의 기본 값 |
language | 현재 JSP 페이지가 사용할 프로그래밍 언어를 설정합니다. | 기본 값: java |
contentType | 현재 JSP 페이지가 생성할 문서의 콘텐츠 유형을 설정합니다. | text/html |
pageEncoding | 현재 JSP 페이지의 문자 인코딩을 설정합니다. 둘 이상의 자바 클래스를 포함하는 경우 쉼표(,)로 구분하여 연속해서 여러 개의 자바 클래스를 설정할 수 있습니다. |
ISO-8859-1 |
import | 현재 JSP 페이지가 사용할 자바 클래스를 설정합니다. 패키지.클래스이며 일반 자바 파일의 import와 역할이 같습니다. |
null |
session | 현재 JSP 페이지의 세션 사용 여부를 설정합니다. 세션 비유: 내 정보를 담은 객체에 비유할 수 있습니다. |
TRUE |
buffer | 현재 JSP 페이지의 출력 버퍼 크기를 설정합니다. | 8KB |
autoFlush | 출력 버퍼의 동작 제어를 설정합니다. | TRUE |
isThreadSafe | 현재 JSP 페이지의 멀티스레드 허용 여부를 설정합니다. | TRUE |
info | 현재 JSP 페이지에 대한 설명을 설정합니다. | null |
errorPage | 현재 JSP 페이지에 오류가 발생했을 때 보여줄 오류 페이지를 설정합니다. | null |
isErrorPage | 현재 JSP 페이지가 오류 페이지인지 여부를 설정합니다 | FALSE |
isELIgnored | 현재 JSP 페이지의 표현 언어(EL) 지원 여부를 설정합니다 | FALSE |
isScriptingEnabled | 현재 JSP 페이지의 스크립트 태그 사용 여부를 설정합니다 | null |
language 속성
현재 JSP 페이지에서 사용할 프로그래밍 언어를 설정합니다. JSP 페이지는 Java 언어를 기본으로 지원하기에 생략하여도 문제 없습니다.
<%@ page language="java" %>
contentType 속성
contentType 속성은 현재 JSP 페이지의 콘텐츠 유형(MIME-type)을 설정하는 데 사용합니다. MIME은 Multipurpose Internet Mail Extensions의 약자입니다.
<%@ page contnetType="text/html; charset=utf-8" %>으로 작성하며 html 파일 이외의 다른 콘텐츠로 제작할 수 있습니다.
<%@ page contentType="text/xml; charset=utf-8" %> 이 코드는 html 파일이 아닌 xml 문서를 만듭니다.
pageEncoding 속성
JSP 페이지의 문자 인코딩 유형을 설정합니다.
<%@ page pageEncoding="ISO-8859-1" %>가 기본 값입니다.
import 속성
해당 JSP 페이지에서 다른 패키지의 클래스를 사용하기 위해 작성합니다. Java 파일의 import와 동일한 기능을 제공합니다.
<%@ page import="java.io.*" %>
다만 Java 파일의 import와는 다르게 많은 패키지를 한 번에 참조할 수 있습니다.
<%@ page import="java.io.*, java.lang.*" %>
session 속성
session 속성은 해당 JSP 페이지의 HTTP 세션 사용 여부를 설정하는데 사용하며 기본 값은 세션을 사용하는 true이며, 세션을 사용하지 않기 위해서는 false로 설정합니다.
<%@ page session="true" %>
buffer 속성
buffer 속성은 현재 JSP 페이지의 출력 버퍼 크기를 설정하는 데 사용합니다. 버퍼는 보조메모리에 비유할 수 있습니다.
<%@ page buffer="none" %> 은 속성 값이 none으로 설정되어 있기에 출력 버퍼를 채우지 않고 웹 브라우저로 직접 보내게 됩니다. 다음은 버퍼 크기를 16KB(킬로바이트)로 설정한 코드입니다. <%@ page buffer="16KB" %>
autoFlush 속성
autoFlush 속성은 자동으로 출력 버퍼를 비우는 것을 제어하기 위해 사용합니다. 기본 값은 true입니다.
<%@ page autoFlush="true" %> flase일 경우 출력 버퍼가 가득 채워질 때 버퍼 오버플로우의 예외를 발생시킵니다.
isThreadSafe 속성
isThreadSafe 속성은 현재 JSP 페이지에서 멀티스레드의 동작을 제어합니다. 기본 값은 true 이며 false로 설정 시 JSP 페이지의 요청이 순차적으로 처리됩니다.
<%@ page isThreadSafe="true" %>
설정을 변경하지 않는걸 추천합니다.
info 속성
info 속성은 현재 JSP 페이지에 대한 설명을 설정하는 데 사용합니다.
<%@ page info="JSP page"%>
위 처럼 info 속성이 되어 있을 경우 JSP 컨테이너는 다음과 같은 getServletInfo() 메소드를 생성합니다.
public String getServletInfo() {
return "JSP Page";
}
errorPage 속성
errorPage 속성은 현재 JSP 페이지가 실행되는 중 오류 발생시 특정 오류 페이지로 이동하는 데 이용합니다.
<%@ page errorPage="MyErrorPage.jsp" %>로 작성시 에러가 발생할 경우 MyErrorPage.jsp로 이동합니다.
이렇게 errorPage를 설정하면 해커 같은 악의적인 유저로 부터 아파치 톰캣이 실행중 인 것을 숨길 수 있습니다.
isErrorPage 속성
현재 JSP 페이지가 오류 페이지인지 여부를 설정하기 위해 사용합니다. 기본 값은 false입니다.
<%@ page isErrorPage="true" %>
isELIgnored 속성
isELIgnored 속성은 표현 언어(Expression language) 사용 여부를 설정하는 데 사용합니다. 기본 값은 false입니다. 표현 언어는 ${}를 의미합니다.
<%@ page isELIgnored="true" %>
isScriptingEnabled 속성
isScriptingEnabled 속성은 스크립트 태그 3가지(선언문, 스크립틀릿, 표현문) 사용 여부를 설정 합니다. 속성 값이 true일 경우 스크립트 태그를 사용할 수 있으며 속성 값이 false일 경우 스크립트 태그 3가지를 사용할 수 없게 됩니다.
<%@ page isScriptingEnabled="false" %>
'JSP > JSP: 정리' 카테고리의 다른 글
[JSP]taglib 디렉티브 태그 (0) | 2023.12.10 |
---|---|
[JSP]웹 서버, 웹 컨테이너, 웹 애플리케이션 서버의 차이점 (0) | 2023.12.10 |
[JSP] include 디렉티브 태그 정리 (0) | 2023.12.07 |
[JSP]JSP의 3가지 스크립트 태그와 주석 태그 정리 (0) | 2023.11.29 |
[JSP]JSP(Java Server Pages)의 개요 (0) | 2023.11.28 |