Áö½ÃÀÚ(JSP Directive)


jsp ÄÁÅ×À̳ʿ¡ ÇØ´ç ÆäÀÌÁöÀÇ Æ¯¼öÇÑ Ã³¸® Á¤º¸¸¦ ³Ö°íÀÚ ÇÒ ¶§ »ç¿ëÇÑ´Ù. ¿¹¸¦ µé¾î »ç¿ëÇÒ ½ºÅ©¸³Æþð¾î¸¦ ÁöÁ¤Çϰųª, ´Ù¸¥ ÆäÀÌÁöÀÇ ÄÁÅÙÆ®¸¦ »ðÀÔÇÏ°í, Ä¿½ºÅÒ ÅÂ±× ¶óÀ̺귯¸®¸¦ ÁöÁ¤ÇÒ ¶§ »ç¿ëµÈ´Ù.

Áö½ÃÀÚ´Â ºê¶ó¿ìÀú »ç¿ëÀÚ¿¡°Ô´Â º¸ÀÌÁö ¾Ê´Â´Ù.

1. page Áö½ÃÀÚ

jsp Áö½ÃÀÚÁß °¡Àå º¹ÀâÇÑ ±¸Á¶·Î µÇ¾î ÀÖ´Ù.

±¸ ¹®

<%@ page ¼Ó¼º1="°ª1" ¼Ó¼º2="°ª2" ... %>

XML ±â¹Ý ±¸ºÐ

<jsp:directive.page ¼Ó¼º1="°ª1" ¼Ó¼º2="°ª2" ... />

¼Ó¼º ¼³Á¤Àº À§ÀÇ µÎ°¡Áö ¹æ¹ý¿¡ µ¿ÀÏÇÏÁö¸¸, xml±â¹ÝÀ¸·Î ½ºÅ¸ÀÏ »ç¿ëÇÏ·Á¸é ÆäÀÌÁö Àüü°¡ xml ½ºÅ¸ÀÏ·Î µÇ¾î ÀÖ¾î¾ß ÇÑ´Ù´Â Á¦¾àÀÌ µû¸¥´Ù.

1) page Áö½ÃÀÚÀÇ attribute

¼Ó¼º

°ª

±âº»°ª

»ç¿ë¿¹

info

ÅؽºÆ® ¹®ÀÚ¿­

¾øÀ½

info = " park w.g"

language

½ºÅ©¸³Æà ¾ð¾î

"java"

language="java"

contentType

MIME ŸÀÔ, ¹®ÀÚÁýÇÕ

 

contentType="text/html;charset=iso-8859-1"
contentType="text/html";

pageEncoding

¹®ÀÚÁýÇÕ

"ios-8859-1"

pageEncoding="ios-8859-1"

extends

Ŭ·¡½º À̸§

¾øÀ½

extends="testWeb"

import

Ŭ·¡½º/ÆÐÅ°ÁöÀ̸§

¾øÀ½

import="java.util.*, java.text.*"

session

ºÒ¸° Ç÷¡±×

"true"

session="true"

buffer

¹öÆÛÅ©±â ¶Ç´Â false

"8kb"

buffer="12kb" or
buffer="false"

autoFlush

ºÒ¸° Ç÷¡±×

"true"

autoFlush="true"

isThreadSafe

ºÒ¸° Ç÷¡±×

"true"

isThreadSafe="true"

errorPage

·ÎÄÃ url

¾øÀ½

errorPage="error1.jsp"

isErrorPage

ºÒ¸° Ç÷¡±×

"false"

isErrorPage="false"

À§ÀÇ Áö½ÃÀÚ¸¦ »ç¿ëÇÒ ¶§ ÁÖÀÇÇÒ Á¡Àº import¸¦ Á¦¿ÜÇÏ°í´Â Áߺ¹Çؼ­ »ç¿ëÇÏ¸é ¾ÈµÈ´Ù.

(1) info

ÆäÀÌÁöÀÇ ¿ªÇÒÀ» ¼³¸íÇØ ÁÖ´Â µµÅ¥¸ÕÆ® ¹®ÀÚ¿­ Ãß°¡ÇÑ´Ù. ÀÌ ¹®ÀÚ¿­Àº jsp ÄÁÅ×À̳ʳª ±âŸ ÇÁ·Î±×·¡¹Ö µµ±¸¸¦ ÅëÇØ ÆäÀÌÁö ¿ä¾à Á¤º¸¸¦ ÃßÃâÇÒ ¶§ »ç¿ëµÇ±âµµ ÇÑ´Ù. º¸Åë ÆäÀÌÁöÀÇ ÀÛ¼ºÀÚ³ª ¹öÀü, ÀúÀÛ±Ç Á¤º¸µîÀ» ±â¼úÇÑ´Ù.

<%@ page info="make by park, Copyright 2002 " %>

(2) language

ÆäÀÌÁö¿¡¼­ »ç¿ëÇÒ ½ºÅ©¸³Æà ¾ð¾î¸¦ ÁöÁ¤ÇÒ ¶§ »ç¿ëÇÑ´Ù. ±âº»À¸·Î "java"¸¦ »ç¿ëÇÑ´Ù. ¸¸¾à includeµÈ ¹®¼­°¡ ÀÖ´Ù¸é language¼Ó¼º¿¡¼­ ÁöÁ¤ÇÑ µ¿ÀÏÇÑ ¾ð¾î¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù.

<%@ page language="java" %>

(3) contentType

jsp ÆäÀÌÁö°¡ »ý¼ºÇÏ´Â ÀÀ´äÀÇ MIME ŸÀÔÀ» ÁöÁ¤ÇÑ´Ù. MIMEŸÀÔµµ ±× Á¾·ù°¡ ´ë´ÜÈ÷ ¸¹Áö¸¸ ÁÖ·Î »ç¿ëµÇ´Â MIMEÀº "text/html", "text/xml", "text/plain" µîÀ» µé ¼ö°¡ ÀÖ´Ù.

¶ÇÇÑ ¹®ÀÚ¿­¼ÂÀ» ÁöÁ¤ÇÒ ¼ö°¡ Àִµ¥ ÀÌ´Â ÆäÀÌÁö°¡ »ç¿ëÇÒ Àüü ¹®ÀÚ¿­À» ´ëüÇÑ´Ù.

<%@ page contentType="text/html; charset=ios-8859-1"%>

¸¸¾à ÇѱÛÀ» »ç¿ëÇϴµ¥ ¹®Á¦°¡ ¹ß»ýÇϰųª ±úÁø ¹®ÀÚ·Î º¸ÀÎ´Ù¸é ¾Æ·¡¿Í°°ÀÌ Ã³¸®ÇÑ´Ù.

<%@ page contentType="text/html; charset=euc-kr" %> or
<%@ page contentType="text/html; charset=ksc5601" %>

(4) pageEncoding

pageEncoding ¼Ó¼ºÀº jsp 1.2¿¡¼­ »õ·Î µµÀÔµÈ ¹æ¹ýÀ¸·Î contentTypeÀÇ charset°ú °°Àº ±â´ÉÀ» ÇÑ´Ù.

<%@ page pageEncoding="ios-8859-1" %>

(5) extends

jsp ¼­ºí¸´ Ŭ·¡½º°¡ »ó¼Ó¹ÞÀ» ½´ÆÛŬ·¡½º¸¦ ÁöÁ¤ÇÑ´Ù. ÀÌ ¼Ó¼ºÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é jspÄÁÅ×À̳ʴ jspÆäÀÌÁöÀÇ ½´ÆÛ Å¬·¡½º¸¦ ÀÚµ¿À¸·Î ã¾Æ »ç¿ëÇϴµ¥ ÀϹÝÀûÀ¸·Î ÀÌ·¸°Ô ó¸®Çؾ߸¸ ÃÖ°íÀÇ ¼º´ÉÀ» ¹ßÈÖÇÏ°Ô µÈ´Ù. µû¶ó¼­ ÀÌ ¼Ó¼ºÀº Àß »ç¿ëµÇÁö ¾Ê´Â´Ù.

<%@ page extends =" info.myit.myJspPage" %>

(6) import

Áߺ¹Çؼ­ »ç¿ëÇÒ ¼ö ÀÖ´Â ¼Ó¼ºÀ̸ç jspÆäÀÌÁö¿¡¼­ ÂüÁ¶ÇÒ Àڹ٠Ŭ·¡½º¸¦ È®ÀåÇÑ´Ù.

<%@ page import="java.awt.*" %>
<%@ page import="java.awt.*, java.util.*" %>

µî°ú °°ÀÌ importÇÒ Å¬·¡½º¸¦ ","»ç¿ëÇÏ¿© ¿¬¼ÓÇؼ­ ±â¼úÇÒ ¼ö ÀÖ´Ù.

(7) session

jspÆäÀÌÁö°¡ ¼¼¼Ç°ü¸®¿¡ °¡´ãÇÒÁö¸¦ °áÁ¤ÇÑ´Ù. ±âº»°ªÀÌ "true"À̱⠶§¹®¿¡ ¼¼¼Ç°ü¸®¿¡ ÀÚµ¿À¸·Î °¡´ãÇÏ°Ô µÈ´Ù. ¸¸¾à ¼¼¼Ç¿¡ °¡´ãÇÏÁö ¾ÊÀ» °æ¿ì "false"°ªÀ» ÁÖ¸é ¼º´ÉÀÌ ¾à°£ Çâ»óµÇ´Â °ÍÀ¸·Î ¾Ë·ÁÁ® ÀÖ´Ù.

<%@ page session="true" %>

(8) buffer

Ãâ·Â ¹öÆÛ¸µÀ» Á¶Á¤ÇÑ´Ù. ¿¹¸¦ µé¾î ¹öÆÛ¸¦ ÅëÇÏÁö ¾Ê°í ¹Ù·Î À¥ ºê¶ó¿ìÀú¿¡¼­ º¸³»·Á¸é

<%@ page buffer="none"%>

¶ó°í ÇÏ¸é µÈ´Ù. ±âº» ¹öÆÛÀÇ Å©±â´Â 8kbÀÌÁö¸¸ jsp ÄÁÅ×À̳ʴ »óȲ¿¡ µû¶ó ´õ Å« ¹öÆÛÀ» ÀâÀ» ¼ö ÀÖ´Ù. Áï, buffer¼Ó¼ºÀ¸·Î Á¤ÇÑ ¹öÆÛÀÇ Å©±â´Â ÃÖ¼ÒÀÇ Å©±â¶ó°í »ý°¢ÇÏ¸é µÈ´Ù.

<%@ page buffer="12kb" %> // 12kbÅ©±âÀÇ ¹öÆÛ¸¦ ÁöÁ¤

(9) autoFlush

buffer¼Ó¼º°ú ¹ÐÁ¢ÇÑ °ü°è°¡ ÀÖ´Â ¼Ó¼ºÀ¸·Î ¹öÆÛ¸¦ ÀÚÁ¾À¸·Î ºñ¿ï °ÍÀΰ¡¸¦ ÆÇ´ÜÇÏ´Â ¼Ó¼ºÀÌ´Ù. ±âº»°ªÀº "true"ÀÌÁö¸¸ Ãâ·Â °á°ú¸¦ ÃÖ´ëÇÑ ´ÊÃß±æ ¿øÇÑ´Ù¸é "false"¸¦ ÁÙ ¼ö ÀÖ´Ù. ±×·¯³ª À̶§ ÁÖÀÇÇÒ Á¡Àº bufferÀÇ ¼Ó¼ºÀÌ "none"ÀÏ ¶§ autoFlush¼Ó¼ºÀ» "false"·Î ÁÙ ¼ö ¾ø´Ù.

<%@ page autoFlush="true" %>

 (10) isThreadSafe

ÀÌ ¼Ó¼ºÀº jspÆäÀÌÁö°¡ ¼­ºí¸´À¸·Î ÄÄÆÄÀ쵃 ¶§ ¿©·¯ °³ÀÇ µ¿½Ã ¿äû¿¡ ÀÀ´äÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» ³Ö´À³Ä¸¦ °áÁ¤ÇÏ´Â ¼Ó¼ºÀÌ´Ù. ¸¸¾à ¼Ó¼º°ªÀ» "false"·Î ÁÖ¸é µ¿½Ã¿¡ Àü´ÞµÈ ¿äû¿¡ ¼øÂ÷ÀûÀ¸·Î ¹ÝÀÀÇϱ⠶§¹®¿¡ »ç¿ëÀÚµéÀº ¾öû³­ Àγ»½ÉÀ» °¡Á®¾ß ÇÑ´Ù.

±×·¯³ª, ¼Ó¼º°ªÀ» "true"·Î ÁÖ¾úÀ» ¶§µµ °ü½ÉÀ» ±â¿ï¿©¾ß ÇÒ ºÎºÐÀÌ ¸¹´Ù. jspÆäÀÌÁö¿¡ ÀÇÇØ µ¥ÀÌÅÍ º£À̽º¸¦ ¿¬µ¿ÇÑ´Ù¸é, µ¥ÀÌÅÍ º£À̽º »ç¿ë¿¡ Ưº°ÇÑ Á¶Ä¡°¡ ¾ø´ÂÇÑ ¿©·¯°³ÀÇ ¾²·¹µå¿¡ ÀÇÇØ ¾ÈÀüÇÏ°Ô µ¥ÀÌÅÍ º£À̽º¸¦ ó¸®ÇÒ ¼ö´Â ¾ø´Ù. ÀÌ·± °æ¿ì ÆäÀÌÁö ¿¢¼¼½ºÁß ·±Å¸ÀÓ ¿¡·¯°¡ ¹ß»ýÇÒ È®À²ÀÌ ³ô¾ÆÁø´Ù.

ÀÌ·¯ÇÑ ºÎºÐÀ» ÇØ°áÇÏ·Á¸é

µ¥ÀÌÅͺ£À̽ºÀÇ poolÀ» ¿¢¼¼½ºÇÏ¿© ¹Ì»ç¿ë µ¥ÀÌÅͺ£À̽º°¡ »ý±æ ¶§ ±îÁö ±â´Ù¸®°Ô ÇÏ°Ô Çϰųª, synchronized Å°¿öµå¸¦ »ç¿ëÇÏ¿© ÇØ´ç ó¸® ºÎºÐÀ» µ¿±âÈ­ ½Ãŵ´Ï´Ù.

ÃÖ¼ÒÇÑÀÇ ¼öÁ¤À¸·Î ¾ÈÀü¼ºÀ» ±âÇÒ·Á¸é ¼Ó¼º°ªÀ» "false"·Î ÁÖ¾î ó¸®ÇÒ ¼öµµ ÀÖÁö¸¸ º¸ÆíÀûÀ¸·Î "true"¸¦ ÁÖ´Â °ÍÀÌ µæÀÌ ¸¹´Ù.

<%@page isThreadSafe="ture"%>

(11) errorPage

 jsp¿¡¼­ ó¸®ÇÏÁö ¸øÇÏ´Â ¿À·ù°¡ ¹ß»ýÇÒ ¶§ ±âº» ¿¡·¯ ÆäÀÌÁö¸¦ »ç¿ëÇÏÁö ¾Ê°í ƯÁ¤ ÆäÀÌÁö¸¦ »ç¿ëÇÏ°íÀÚ ÇÒ ¶§ »ç¿ëÇÑ´Ù.

<%@page errorPage="url"%>

 urlÀº Àý´ë °æ·Î¿Í »ó´ë°æ·Î ¸ðµÎ »ç¿ëÇÒ ¼ö ÀÖ´Ù.

<%@ page errorPage="/errorpage/error1.html"%>

 À¥¼­¹öÀÇ Àý´ë°æ·Î "/errorpage"¾È¿¡ error1.htmlÀ¸·Î ¿¬°áµÈ´Ù.

<%@ page errorPage="../errorpage/error1.html"%>

Àº ÇöÀç µð·ºÅ丮ÀÇ »óÀ§µð·ºÅ丮¿¡¼­ "errorpage"°æ·Î¾ÈÀÇ error1.htmlÆäÀÌÁö·Î ¿¬°áµÈ´Ù.

ÇÑ°¡Áö ÁÖÀÇÇÒÁ¡Àº errorPage ¼Ó¼ºÀ» »ç¿ëÇÏ°íÀÚ ÇÒ ¶§´Â ÇöÀçÀÇ ÆäÀÌÁö Á¤º¸°¡ ÇѹøÀÌ¶óµµ ºê¶ó¿ìÀú·Î Àü¼ÛµÇ¾î¼­´Â ¾ÈµÈ´Ù´Â °ÍÀÌ´Ù. µû¶ó¼­ autoFlush ¼Ó¼ºÀ» false·Î ¼³Á¤ÇÏ¿©¾ß ÇÑ´Ù.

(12) isErrorPage

 ÇØ´ç ÆäÀÌÁö°¡ ¿¡·¯ ÆäÀÌÁö·Î ÀÛµ¿Çϵµ·Ï ÇÒ ¶§ »ç¿ëÇÑ´Ù.

<%@ page isErrorPage="true"%>

 ´ëºÎºÐÀÇ ÆäÀÌÁö°¡ ¿¡·¯ ÆäÀÌÁö·Î ÀÛµ¿ÇÏÁö ¾Ê±â ¶§¹®¿¡ ±âº»°ªÀº falseÀÌ´Ù.

2. include Áö½ÃÀÚ

ÁÖ¾îÁø ÆÄÀÏÀ» ÇöÀç ÆäÀÌÁö¿¡ »ðÀÔÇÏ°íÀÚ ÇÒ ¶§ »ç¿ëµÈ´Ù.

<%@ include file="file_url"%> or
<jsp:directive.include file="file_url"/>

c¾ð¾îÀÇ #include¿Í ±× ±â´ÉÀÌ À¯»çÇÕ´Ï´Ù. ¹Ýº¹Çؼ­ ¿©·¯¹ø »ç¿ëÇÒ ¼ö ÀÖ´Ù.

±×·¯³ª ÇÑ°¡Áö ÁÖÀÇÇÒ Á¡Àº jspÄÁÅ×À̳ʴ ¾î¶² ÆäÀÌÁöÀÇ ³»¿ëÀÌ ¼öÁ¤µÇ¸é ÀÚµ¿À¸·Î ¼­ºí¸´À¸·Î ÄÄÆÄÀϵǾîÁöÁö¸¸ include·Î »ðÀÔµÈ ÆÄÀÏÀÌ ¼öÁ¤µÇ¾ú´Ù°í ÀÚµ¿À¸·Î ÄÄÆÄÀϵÇÁö ¾Ê´Â´Ù´Â Á¡ÀÌ´Ù.

¸¸¾à includeµÈ ÆÄÀÏÀÌ ¼öÁ¤µÇ¾ú´Ù¸é includeÇÑ ÆÄÀÏÀÇ ÀúÀå ³¯Â¥¸¦ ¼öÁ¤ÇØ Áְųª, ³»¿ëÀ» ´Ù½Ã Çѹø ÀúÀåÇØ ÁÖ¾î¾ß ÇÑ´Ù.

3. taglib Áö½ÃÀÚ

jsp ÆäÀÌÁö°¡ »ç¿ëÇÒ Å±׶óÀ̺귯¸®¸¦ ÁöÁ¤ÇÒ ¶§ »ç¿ëÇÑ´Ù. ÅÂ±× ¶óÀ̺귯¸®´Â jsp±â´ÉÀ» È®ÀåÇϱâ À§ÇØ »ç¿ëµÉ ¼ö ÀÖ´Â Ä¿½ºÅÒ Å±׸¦ ¸ð¾Æ³õÀº °ÍÀ» ¸»ÇÑ´Ù.

<%@ taglib url="tag_library_url" prefix="tag_prefix" %> or
<jsp:directive.taglib url="tag_library_url" prefix="tag_prefix" />

 url¼Ó¼º°ªÀº ÇØ´ç ÅÂ±× ¶óÀ̺귯¸®ÀÇ ÅÂ±× ¶óÀ̺귯¸® ¼³¸íÀÚ(TLD:Tag Library Descriptor)ÀÇ À§Ä¡¸¦ ³ªÅ¸³»¸ç, prefix¼Ó¼ºÀº ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ´Â ÆäÀÌÁö¿¡¼­ ÇØ´ç ¶óÀ̺귯¸®ÀÇ ÅÂ±× ¾Õ¿¡ ºÙ¿©Áö´Â XML ³×ÀÓ½ºÆäÀ̽º ½Äº°ÀÚ¸¦ ÁöÁ¤ÇÏ´Â °ÍÀÌ´Ù.

¿¹¸¦µé¸é,

<%@ taglib url="/abc" prefix="alpha" %>

 ¶ó°í ÁöÁ¤Çϸé ÀÌ ¶óÀ̺귯¸®ÀÇ Å±׿¡ "korea"°¡ ÀÖ´Ù¸é

<alpha:korea/>

 ¶ó°í »ç¿ëÇÒ ¼ö ÀÖ´Ù.