From Gossip@caterpillar

JSP/Servlet: page Directive Element

 

 


¦b­ì¨ÓªºJSP 1.2¤¤¡A¦³page¡Binclude»Ptaglib¤TºØDirective Elements¡]«ü¥O¤¸¯À¡^¡A¦bJSP 2.0¤§«á¡A·s¼WTag File¡A¥¦¦Û¨­¾Ö¦³tag¡Battrivute©Mvariable¤T­Ó«ü¥O¤¸¯À¡C

«ü¥O¤¸¯Àªº»yªk¨Ï¥Î<%@ »P %>¥]¬A¡A¦]¬°¨C­Ó¤¸¯Àªº¨Ï¥Î³õ¦X¦U¤£¬Û¦P¡A¦b³oÃ䤣ª½±µ¤¶²Ð©Ò¦³ªº¥Îªk¡A¥ý­n¤¶²Ðpageªº¥Îªk¡A¥H¹ê¨Ò¨Ó»¡©ú¡G

  • nowTime.jsp
<%@page info="JSP«ü¥O¤¸¯À¥Ü½d"%> 
<%@page contentType="text/html;charset=Big5"%>
<%@page
import="javax.servlet.jsp.HttpJspPage,java.util.Date"%>
<html>
<head>
<title><%= ((HttpJspPage)page).getServletInfo() %></title>
</head>
<body>

²{¦b®É¶¡: <b><%= new Date() %>

</body>
</html>

¦b¨Ò¤l¤¤¤¶²Ð¤Fpageªº¤T­ÓÄݩʳ]©w¡Ginfo¡BcontentType»Pimport¡C
  • info
¥Î©ó³]©w¥Ø«eJSP­¶­±ªº°ò¥»¸ê°T¡A³o­Ó¸ê°T³Ì«á·|Âà´«¬°Servletµ{¦¡¤¤¨Ï¥ÎgetServletInf()©Ò¨ú±oªº¸ê°T¡C

¦b¨Ò¤l¤¤¨Ï¥ÎJSP¤¤ªºÁô§tª«¥ó¡]Implicit object¡^page¡Apageª«¥ó¹ïÀ³ªºJavaª«¥ó«¬ºA¬OObject¡A²³æªº»¡¥Nªí¥Ø«e³o­ÓJSPÂà´«¹L«áªºServletª«¥ó¥»¨­¡A¤]´N¬O¬Û·í©ó this¡AHttpJspPage¬O¸ÓServletª«¥ó¹ê§@ªº¤@­Ó¤¶­±¡A§Ú­ÌÂ૬¦ÜHttpJspPage«¬ºA¡A¦p¦¹´N¥i¥H¨Ï¥Î getServletInfo()¤èªk¨ú±oJSPªº­¶­±¸ê°T¡C

  • contentType
¥Î©ó³]©wMIME«¬ºA¤Îºô­¶½s½X¤è¦¡¡A¦b³oÃä³]©wªº¬Otext/html¡A¦Ó½s½X¤è¦¡«h³]©wBig5½X¡A³o­Ó³¡¥÷ªº³]©w¬Oµ¹ÂsÄý¾¹§PÂ_¸Ó¥H¤°»ò¼Ëªº¤è¦¡Åã¥Üºô­¶¤å¥ó¡A¦bServlet¤¤¡A³o­Ó³¡¥÷¬O¹ïÀ³©ó HttpServletResponseª«¥óªºsetContentType()¤èªk¡G

response.setContentType("text/html;charset=Big5");

¨Ï¥ÎBig5½s½Xºô­¶®É¡A¦³¨Ç¤¤¤å¦rªºÅã¥Ü·|¦³°ÝÃD¡]¨Ò¦pùÖ¡^¡A¤ñ¸û«ØÄ³ªº¬OUTF8½s½X¤è¦¡¡C

  • import
§YÂàͬ°Java»yªkªºimport¡C


page¤¸¯À°£¤F¥H¤W¤T­ÓÄݩʳ]©w¤§¥~¡AÁÙ¦³¨ä¥¦ªºÄݩʡA§Ú­Ì¤¶²Ð¦p¤U¡G
  • autoFlush
¥Î©ó³]©w¦Ü«È¤áºÝªº¿é¥X¦ê¬y¬O§_­n¦Û°Ê¥X²M¡A¹w³]¬Otrue¡A¦pªG³]©w¬°false¡A¦Ó½w½Ä°Ïº¡¤F«oÁÙ¨S±N¸ê®Æ°e¥X¦Ü«È¤áºÝ¡A±N·|²£¥Í¨Ò¥~¡C

  • buffer
¥Î©ó³]©w¦Ü«È¤áºÝªº¿é¥X¦ê¬y½w½Ä°Ï¤j¤p¡A¹w³]¬O8KB¡C

  • errorPage
¥Î©ó³]©w·íJSP°õ¦æ¿ù»~¦Ó²£¥Í¨Ò¥~®É¡A¸Ó¥Ñ­þ¤@­Ó­¶­±³B²z³o­Ó¨Ò¥~¡C

  • extends
¥i¥H¥Î¨Ó«ü©wJSPºô­¶Âàͬ°Servletµ{¦¡¤§«á¡A¸ÓÄ~©Ó­þ¤@­ÓÃþ§O¡A¥HTomcat 5.5.4¬°¨Ò¡A¹w³]¬OÄ~©Ó¦Ûorg.apache.jasper.runtime.HttpJspBase¡A¦ÓHttpJspBase¤SÄ~©Ó¦Û HttpServlet¡A³o­ÓÃþ§OªºÄ~©Ó¬[ºc«h¦p¤U¡G
¡@¡@java.lang.Object
¡@¡@¡@javax.servlet.GenericServlet
¡@¡@¡@¡@javax.servlet.http.HttpServlet
¡@¡@¡@¡@¡@org.apache.jasper.runtime.HttpJspBase

  • isErrorPage
¥Î¥H³]©wJSP­¶­±¬O§_¬°³B²z¨Ò¥~ªº­¶­±¡A³o­ÓÄݩʭn»PerrorPage°t¦X¨Ï¥Î¡A±N¦b¤§«á¤¶²Ð¡C

  • language
¥Î¨Ó«ü©w®e¾¹¨Ï¥Î­þºØ»y¨¥ªº»yªk¨Ó½sĶJSPºô­¶¡A¨¥¤U¤§·N¬OJSP°ò¥»¤W¥i¨Ï¥Î¨ä¥¦»y¨¥¨Ó¼¶¼g¡A¤£¹L¨Æ¹ê¤W¥Ø«e¥u¯à¨Ï¥ÎJavaªº»yªk¥B¬O¹w³]¡C

  • session
¥i³]©w¬O§_¨Ï¥Îsessionª«¥ó¡A¹w³]¬Otrue¡A­Y¬Y¨Ç­¶­±¤£»Ý§@¶iµ{°lÂÜ¡A¥i¥H³]¦¨false¡A¥i¥H¼W¥[¤@¨Ç®Ä¯à¡C

  • pageEncoding
¥Î©ó«ü©wJSPºô­¶ÂରServlet½sͮɱčúªº½s½X¤è¦¡¡A¦p¦¹¦b½sͮɤ~¯à¥¿½TªºÂà´«µ{¦¡½X¤¤³]©wªº¦r¤¸¡A¨Ò¦pJSPºô­¶¤¤¥]¬ABig5¤¤¤å¦rªº¸Ü¡A¥²¶·³]©w<%@ page pageEncoding="Big5"%>¡A¹w³]¬O§@·~¨t²Îªº»y¨t³]©w¡A¦b¤£¨Ï¥Î response ªºsetCharacterEncoding()³]©w®É¡ApageEncoding¤]¬O¦^À³®É¹w³]ªº½s½X«ü©w¡C

  • isELIgnored
¥Î¥H³]©wJSPºô­¶¤¤¬O§_©¿²¤Expression Language¡A¹w³]¬Ofalse¡A¦pªG³]©w¬°true¡A«hExpression Language¤£·|³QÂàĶ¡A³o­Ó³]©w·|±À½web.xml¤¤ªº<el-ignored>³]©w¡AExpression Language¦bJSP 2.0¦¨¬°¼Ð·Ç³W®æ¤§¤@¡A±N¦b¤§«á¤¶²Ð¡C

  • isThreadSafe
¨M©wÂàͤ§«áªºServlet¬O§_¬°°õ¦æºü¦w¥þªº¡A¹w³]­È¬Otrue¡A¦pªG³]©w¬°false¡A«hÂàͤ§«áªºServlet·|¹ê§@SingleThreadModel¤¶­±¡A³o·|¤Þ°_®Ä¯à°ÝÃD¡A¬Û·í¤£«ØÄ³³o»ò§@¡C

±z¥i¥H¦b¨Ï¥Îpage¤¸¯À®É¤@¦æ¤@¦æ¼¶¼g¡A¤]¥i¥H¼¶¼g¦b¦P¤@­Ó <%@ »P %>¤§¶¡¡A¨Ò¦p¡G
<%@page contentType="text/html;charset=Big5"
                    import="javax.servlet.jsp.HttpJspPage,java.util.Date"%>
 

·íµM¦pªG¤º®e¤Óªø¡A¤´¬O¤À¶}¼¶¼g¨Ó±o©úÁA¡F³Ì«á¦C¥X½d¨Ò©Ò¶Ç¦^ªºHTML¤º®e¡G
<html>
<head><title>JSP«ü¥O¤¸¯À¥Ü½d</title></head>
<body>
    ²{¦b®É¶¡: Wed May 05 20:27:02 CST 2004
</body>
</html>