Purple Bobblehead Bunny

Backend/JSP SERVLET

[JSP] 지시자

준영어린이 2022. 6. 24. 16:39

 

 

지시자(Directive)

 

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

 

 

JSP 지시자 종류

  • page
  • include
  • taglib

 

1. PAGE 지시자

 

속성 기본값
info 텍스트 없음
language 스크립팅 언어 "java"
contentType MIME 타입, 문자집합 contentType="text/html;charset=ISO-8859-1"
extends 클래스 이름 없음
import 클래스/패키지 이름 없음
session 클래스/패키지 이름 'true'
buffer buffer 값 or "none" "8kb"
autoFlush boolean값 "true"
isThreadSafe boolean값 "true"
trimDirectiveWhitespaces boolean값 "false"
errorPage 로컬URL 없음
isErrorPage boolean "true"
pageEncoding 페이지의 캐릭터 인코딩 값 "ISO-8859-1"

 

autoFlush 속성

 

  • jsp 페이지의 내용들이 브러우저에 출력되기 전에 버퍼에 다 채워질 경우 저장되어 있는 내용들을 어떻게 처리할지를 결정한다.
  • true는 버퍼가 다 찼을 경우 자동으로 비어지게 된다.

isThreadSafe 속성

  • 하나의 jsp 페이지가 동시에 여러 브라우저를 요청을 처리할 수 있는지 여부를 설정
  • 기본값은 true, false로 지정 시 요청을 순서대로 처리

trimDirectiveWhitespaces 속성

  • 디렉티브나 스크립트 코드로 인하여 발생되는 줄 바꿈 공백 문자를 제거하는 기능

info 속성

  • 페이지를 설명 해 주는 문자열로 속성값의 내용이나 길이의 제한이 없다.

language 속성

  • jsp 페이지의 스크립트 요소에서 사용할 언어를 지정하는 속성

contentType 속성

  • jsp 페이지의 내용이 어떤 형태로 출력할 것인지 MIME 형식으로 브라우저에 알려주는 역할
  • 지정할 속성 값으로 text/html, tetx/plain, text/xml, text/gf 등의 값이 있다.
  • 또한 contentType 속성은 jsp 페이지에서 사용하는 문자형식(charset)을 지정하는데 사용 할 수 있다.
  • 기본값은 ISO-8859-1이고 한글을 지정하는 문자형식은 EUC-KR로 표현한다.

extends 속성

  • jsp가 servlet로 변환되는 시점에서 자신이 상속받을 클래스를 지정할 때 사용

import 속성

  • jsp 페이지 내에서 package 이름을 지정하지 않고 다른 클래스를 가져와서 사용하는 경우 지정

session 속성

  • jsp 페이지가 HttpSession을 사용할 지 여부를 지정하는 속성
  • true는 세션을 유지, false는 세션에 연결되지 않음

buffer 속성

  • jsp 페이지의 출력 크기를 킬로바이트 단위로 지정하는 속성
  • 기본 값은 8 byte

errorPage 속성

  • jsp 페이지를 처리하는 도중에 페이지에서 예외가 발생하는 경우 자신이 예외를 처리하지 않고 다른 페이지에서 처리하도록 지정할 수 있는 속성

isErrorPage 속성

  • 현재 jsp 페이지가 에러 처리를 담당하는 페이지인지 아닌지의 여부를 지정할 때 사용되는 속성                                     기본값은 false, 에러 처리를 위해 만들어지는 에러페이지라면 true로 설정

 

2. include 지시자

- 여러 jsp 페이지에서 특정 파일의 내용을 삽입하고자 할 때 사용

- 보통 jsp 여러 페이지에서 공통적으로 포함하는 내용이 있을 때 활용

 

주의

변수 선언 시 중복을 피해야 하고, 두 개의 파일을 하나의 파일로 합친 것과 같은 영향을 줌

 

 

// top.jsp 
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
    
    top
<hr>
<%@ include file = "middle.jsp" %>
<hr>
<%@ include file = "bottom.jsp" %>
// middle.jsp 

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
    
    middle
// bottom.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
    
    bottom

'Backend > JSP SERVLET' 카테고리의 다른 글

[JSP] 포워딩, 리다이렉트  (0) 2022.06.27
[JSP] form  (0) 2022.06.26
[JSP] ActionTag  (0) 2022.06.24
[JSP] 기초 문법  (0) 2022.06.22
[JSP] Servlet  (0) 2022.06.22