A. JSP的三個編譯指令
1、JSP的編譯指令是同志引擎的消息,它不直接生成輸出。編譯指令都有默認值,因此開發人員無須為每個指令設置值。常見的編譯指令:
page:該指令是針對當前頁面的指令
include:用於指定包含另一個頁面
taglib:用於定義和訪問自定義標簽
使用編譯指令語法格式:<%@ 編譯指令名 屬性名="屬性值"...%>
2、page指令
page指令位於JSP頁面的頂端,一個JSP頁面可以使用多條page指令。page指令屬性:
language:聲明當前JSP頁面使用的腳本語言的種類,因為頁面是JSP頁面,所以通常都是java,默認值也是java,所以通常無須設置。
extends:指定JSP頁面編譯所產生的Java類所繼承的父類,或所實現的介面。
import:用來導入包。默認導入的包:java.lang.*,javax.servlet.*、javax.servlet.jsp.*、javax.servlet.http.*。
session:設定這個JSP頁面是否需要HTTP Session。
buffer:指定輸出緩沖區的大小。輸出緩沖區的JSP內部對梁辯象:out用於緩存JSP頁面對客戶瀏覽器的輸出,默認值為8KB,可設為none。
autoFlush:當輸出緩沖區即將溢出時,是否需要強制輸出緩沖區內容。true時輸出,false會在buffer溢出時產生一個異常。
info:設置該JSP程序的信息,也可以看作其說明,可通過Servlet.getServletInfo()方法獲取該值。
errorPage:指定錯誤處理頁面。
isErrorPage:設置本JSP頁叢畝面是否為錯誤處理程序。
contentType:用於設定生成網頁的文件格式和編碼字元集,即MIME類型和頁面字元集類型,默認的MIME類型是text/html,默認的字元集是ISO-8859-1。
pageEncoding:指定生成網頁的編碼字元集。
註:因為JSP內建了異常機制支持,所以JSP可以不處理異常,即使是checked異常。
3、include指令:可以將一個外部文件嵌入到JSP文件中,同時解析這個頁面的JSP語句。include既可以包含靜態的文本,也可以包含滲渣森動態的JSP頁面。語法格式:<%@include file="relativeURLSpec"%>
如果嵌入的文件經常改變,建議使用操作指令,因為它是動態的include語句。
需要注意的是,靜態包含還會將被包含頁面的編譯指令也包含進來,如果兩個頁面的編譯指令沖突,那麼頁面就會報錯。