JSP 페이지의 디렉티브(Directive)

- 클라이언트의 요청에 JSP 페이지가 실행될 때 필요한 정보를 JSP컨테이너에게 알리는 역할

- 단지 "이렇게 처리를 하시오"라는 지시를 내리는 것

- 태그안에서 @로 시작

- 종류 : page, include, taglib

※ page 디렉티브 : <%@page%>

- JSP 페이지에 지원되는 속성 정의

① info

· 페이지를 설명해주는 문자열(설정 하지 않더라도 페이지 처리에 아무런 영향을 주지 않음)

JSP페이지의 제목을 붙이는 것과 같은 기능을 하는 속성

· 예) <%@ page info="copyright by HJ" %>

② language

· JSP페이지의 스크립트 요소에서 사용할 언어 지정(기본값 : java)

JSP 2.0버전까지는 스크립트 언어로서 자바만을 지원

· 예) <%@ page lanugage="java" %>

③ contentType

· JSP페이지의 내용이 어떠한 형태로 출력을 할 것인지를 MIME형식으로 브라우저에 알려줌

속성값 : text/html, text/plain, text/xml 등(기본값 : text/html)

text/html은 html 문서형식으로 출력하겠다는 의미

· 예) <%@ page contentType="text/html" %>

· jsp페이지에서 사용하는 문자형식 지정에도 사용 가능

charset의 기본값은 ISO-8859-1(서유럽언어)이고 한글지정 문자형식은 euc-kr

웹브라우저에서 표시되는 한글이 깨지지 않게 하려면 반드시 "charset=euc-kr"로 설정

· 예) <%@ page contentType="text/html;charset=euc-kr" %>

④ extends

· JSP페이지가 Servlet소스로 변환되는 시점에서 자신이 상속받을 클래스를 지정할 때 사용

JSP컨테이너가 정적한 클래스를 상속시켜 변환해주므로 사용할 일은 거의 없음

· 예) <%@ page extends="com.hj.Classes"%>

⑤ import

· JSP페이지 내에서 다른 클래스를 가져와서 사용하는 경우 사용

(클래스명을 패키지명을 포함한 풀네임으로 사용하지 않기 위해)

page 디렉티브 속성 중 유일하게 중복 사용이 가능

· 예) <%@ page import="java.util.Vector" %>

<%@ page import="java.io.*" %>

⑥ session

· JSP페이지가 HttpSession을 사용할 지 여부를 지정하는 속성

true일 경우 현재페이지의 세션 유지하고 존재하지 않을 경우 새로운 세션 생성하여 연결

false일 경우 세션에 연결되지 않음(기본값은 true)

· 예) <%@ page session="false" %>

⑦ buffer

· JSP페이지의 출력크기를 KB단위로 지정하는 속성(기본값 : 8KB)

buffer값을 "none"으로 지정하면 출력버퍼를 사용하지 않고, JSP페이지의 출력내용을

즉시 브라우저로 전달

· 예) <%@ page buffer="16kb" %>

<%@ page buffer="none" %>

⑧ autoFlush

· JSP페이지의 내용들이 브라우저에 출력되기 전에 버퍼가 다 찰경우에 저장되는 내용들을

어떻게 처리할지를 결정하는 속성

"true"로 설정해 놓으면 버퍼가 다 찼을 경우 자동적으로 비워지게 되어 요청한 내용을

브라우저에 전송(기본값 : true)

buffer속성값이 "none"일 경우 autoflush속성을 "false"로 지정불가

· 예) <%@ page autoflush="false" %>

⑨ isThreadSafe

· 하나의 JSP페이지가 동시에 여러 브라우저의 요청을 처리할 수 있는지 여부 설정하는 속성

기본값은 "true"이며 "false"로 지정해 놓으면 요청을 동시에 처리하지 않고 요청한 순서

대로 처리하므로 오랜 시간이 걸림(가급적이면 사용하지 않는 것이 좋음)

· 예) <%@ page isThreadSafe="false" %>

⑩ errorPage

· 예외발생 시 자신이 예외를 처리하지 않고 다른 페이지에서 처리하도록 지정할수있는 속성

속성값으로 직접 예외를 처리할 페이지의 로컬 URL을 적어주면 됨

· 예) <%@ page errorPage="Error.jsp" %>

⑪ isErrorPage

· 현재 JSP페이지가 에러처리를 담당하는 페이지인지 아닌지의 여부를 지정할 때 사용

에러를 처리하지 않는 페이지라면 설정할 필요없음(기본값 : false)

· 예) <%@ page isErrorPage="true" %>

⑫ pageEncoding

· JSP1.2규약에 새로 추가된 속성. JSP페이지에 사용하는 문자의 인코딩 지정시 사용

(기본값 : ISO-8859-1)

· 예) <%@ page pageEncoding="euc-kr" %>

<%@ page pageEncoding="euc-kr" contentType="text/html" %>

(<%@ page contentType="text/html;charset=euc-kr" %>와 같은 효과)

⑬ isELIgnored

· JSP의 버전 및 설정에 따라 달라짐

· 예) <%@ page isELIgnored="true" %>

※ include 디렉티브 : <%@include%>

- JSP페이지에서 공통적으로 포함되는 내용이 있을 때 매번 입력하지 않고 별도의 파일로

저장해두었다가 JSP페이지 내에 삽입하도록 하는 것

- 예) <%@ include file="top.jsp" %>

- 처리과정은 정적(include되는 파일의 결과가 포함되는 것이 아니라 단순히 파일의 내용이

텍스트로 include 디렉티브가 위치한 자리에 그대로 복사되는 것)

- 주로 조각코드를 삽입할때 사용하며 확장자는 jsp보다는 jspf를 사용하는 것이 좋음

taglib 디렉티브 : <%@taglib%>

- 표현언어, JSTL,커스텀태그를 JSP페이지내에 사용할때 사용

- 예) <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

 

 

 

출처 - http://blog.naver.com/bleu_ciel?Redirect=Log&logNo=140036043093

'프로그래밍 > JAVA' 카테고리의 다른 글

JSTL <c:forEach> 사용법  (0) 2016.03.04
오라클 클라이언트 설치 윈도우 7  (0) 2013.01.15
@RequestMapping annotation  (0) 2012.11.08
Posted by VentoIin

공지사항

카테고리

Information Security
====================..
보안
====================..
시스템 일반
프로그래밍
웹 해킹
데이터베이스
리눅스
강의 정리
자료실
====================..
자동차
====================..
보컬
====================..
BLOG main image
정보보호의 필요성~~ by VentoIin
Total :
Today : Yesterday :