JSP 기본 요소

Web/JSP 2011. 3. 16. 00:21 Posted by Request

1.JSP 지시어(Directive)
표기 예 : <%@ ... %>
종류     : page 지시어
             include 지시어
             taglib 지시어


  1)page 지시어(language, extends, import, session, buffer, isThreadSafe, info, errorPage, contentType, isErrorPage, pageEncoding)
import속성을 제외한 나머지 속성은 한번씩만 지정 할수 있음.
속성 - (스크립트 언어, 세션 사용여부, 에러 페이지등 설정 정보를 지정 가능)

(1)language속성
  -JSP 파일 내에서 사용될 스크립트 언어를 지정하는 속성
(지정하지 않을경우, JSP컨테이너가 지원하는 기본 언어인 자바가 language 기본 속성으로 지정됨)
※주의점 : language속성과 include할 페이지의 language가 반드시 같아야 함.
<%@ page language="java" %>


(2)extends 속성
 -상속할 부모 클래스 지정하는 속성 (JSP 컨테이너에서 특별히 지정하는 경우는 거의 없다.)
<%@ page extends="javax.servilet.jsp.HttpJspBase" %>


(3)import 속성
 -언어에 대한 패키지 또는 클래스 연결 하기 위해 사용
<%@ import "java.io.*", java.util.ArrayList" %>

(4)session 속성
 -동일한 클라이언트에 대해 정보를 유지할 필요가 있는 경우 사용
(예를 들어 로그인 상태 유지)
세션관리에 의해 클라이언트의 정보가 유지되도록 만들어진 가상의 커넥션을 HTTP 세션이라고 함.
<%@ page session="true" %>

(5)buffer 속성
-JSP 페이지가 서블릿으로 변환되어 응답을 생성해 클라이언트에 전송할 때 사용되는 버퍼의 크기를 지정하는 속성.
일반적으로 기본값인 "8kb"면 충분
<%@ page buffer="16kb" %>

(6)autoFlush 속성
-autoFlush 속성은 buffer속성에서 지정한 버퍼가 다 채워졌을 경우 이를 어떻게 처리할지 JSP 컨테이너에게 알려주는 속성.
기본값은 "true"
false로 지정할시 지정한 버퍼가 다 채워 졌을 경우 버퍼를 전송하는 것이 아니라 Exception을 발생
만일 buffer 속성에서 "none"으로 지정했을 경우 autoFlush속성을 "false"로 지정하는 것이 불가능함.
<%@ page autoFlush="true" %>

(7)isThreadSafe 속성
-기본적으로 JSP는 다중 쓰레드 기반으로 실행.
(JSP파일 > JSP컨테이너에 의해 파싱되어 서블릿 인스턴스가 생성되고 사용자 요청 각각에 대한 쓰레드가 하나씩 생성되어 그 쓰레드가 사용자의 요청을 처리하는 방식)
-속성 "false"로 지정하면 JSP파일이 실행되더라도 하나의 쓰레드에 의한 service()메소드 실행이 완전히 끝날때까지 다른 쓰레드는 기달리게 된다.
default = "ture"
<%@ page isTheadSafe="true" %>

(8)info 속성
-해당 페이지 전체에 대한 주석의 역할을 하는 속성
<%@ page info="이 페이지는 이클립스로 만들어진 페이지입니다." %>


(9)errorPage 속성
-errorPage속성은 JSP 페이지를 처리하는 과정에서 예외 발생했을 때 해당 페이지에서 직접 처리하지 않고 에러 페에지를 지정해 그 에러 페에지에서 예외를 처리하도록 할때 사용하는 속성.
<%@ page errprPage="errpr/error.jsp" %>
※주의점 : buffer속성에 특정 값이 지정되어 있고 autoFlush가 "true" 에러가 아닌 예외처리 됨.

(10)contentType 속성
-JSP 페이지가 전송 할 응답의 형태가 어떠한 MIME 형식으로 되어 있는 지를 지정하는 속성.
<%@ page contentType="text/html"; charset:euc-kr" %>

(11) isErrorPage 속성
-isErrorPage 속성은 현재 페이지가 다른 페에지에서 발생한 예외을 처리할 페이지일때 지정하는 속성

(12)pageEncoding 속성
-JSP 페이지의 문자셋 인코딩 방식을 지정할 때 사용하는 속성
기본값으로 "ISO-8859-1"   <-- 북유럽 문자셋 인코딩 방식(한글 지원 X)
                "euc-kr"    <--- 한글깨짐현상 시 필히 확인할 것.
※문자셋은 pageEncoding 속성을 사용해서 지정할 수도 있지만 보통 pageEncoding 속성을 사용하지 않고 위에서 contentType 속성을 지정할때 한것처럼 한번에 지정하여 사용함.