JSP指令
在本章中,我們將介紹和學習JSP中的指令。這些指令向容器提供指示和說明,告訴容器如何處理JSP處理的請求和響應。
JSP指令影響servlet類的整體結構。它通常具有以下形式 -
<%@ directive attribute = "value" %>
指令可以有多個屬性,可以將其列爲鍵值對,並以逗號分隔。
@
符號和指令名稱之間,以及最後一個屬性和關閉%>
之間的空格是可選的。
JSP中有三種類型的指令標籤 -
序號
指令
說明
1
<%@ page ... %>
定義頁面相關屬性,如腳本語言,錯誤頁面和緩衝要求。
2
<%@ include ... %>
在編譯階段包括文件。
3
<%@ taglib ... %>
聲明頁面中使用的包含自定義操作的標籤庫
1. page指令
page
指令用於向容器提供說明。這些說明涉及當前的JSP頁面。可以在JSP頁面的任何位置編寫page
指令。按照慣例,page
指令被編碼在JSP頁面的頂部。
以下是page
指令的基本語法 -
<%@ page attribute = "value" %>
可以使用XML編寫上述語法,如下所示:
<jsp:directive.page attribute = "value" />
屬性
下表列出了與page
指令相關聯的屬性 -
序號
屬性
說明
1
buffer
指定輸出流的緩衝模型。
2
autoFlush
控制servlet輸出緩衝區的行爲。
3
contentType
定義字符編碼方案。
4
errorPage
定義另一個報告Java未檢查運行時異常的JSP的URL。
5
isErrorPage
指示此JSP頁面是否是由另一個JSP頁面的errorPage
屬性指定的URL。
6
extends
指定生成的servlet必須擴展的超類。
7
import
指定JSP中使用的包或類的列表,就像Java的import
語句一樣。
8
info
定義可以使用servlet的getServletInfo()
方法訪問的字符串。
9
isThreadSafe
定義生成的servlet的線程模型。
10
language
定義JSP頁面中使用的編程語言。
11
session
指定JSP頁面是否參與HTTP會話
12
isELIgnored
指定JSP頁面中的EL表達式是否被忽略。
13
isScriptingEnabled
確定腳本元素是否被允許使用。
查看與page
指令相關所有上述屬性的更多詳細信息。請參考:http://www.yiibai.com/jsp/page\_directive.html
2. include指令
include
指令用於在編譯階段包括一個文件。這個指令告訴容器在編譯階段將其他外部文件的內容合併到當前JSP文件中。可在JSP頁面的任何位置使用include
指令進行編碼。
本指令的一般用法形式如下:
<%@ include file = "relative url" >
include
指令中的文件名實際上是一個相對URL。如果只指定一個沒有關聯路徑的文件名,那麼JSP編譯器會假定該文件與JSP在同一個目錄中。
可以使用XML編寫上述代碼效果相同,如下所示:
<jsp:directive.include file = "relative url" />
有關include
指令的更多詳細信息,請查看鏈接:include指令
3. taglib指令
JSP API允許自定義的JSP標籤,如:HTML或XML標籤,標籤庫是一組實現自定義行爲的用戶定義標籤。
taglib
指令聲明JSP頁面使用一組自定義標籤,標識庫的位置,並提供了在JSP頁面中標識自定義標籤的方法。
taglib
指令遵循下面給出的語法 -
<%@ taglib uri="uri" prefix = "prefixOfTag" >
這裏,uri
屬性值解析爲容器理解的位置,並且prefix
屬性通知容器什麼位置的標記是自定義操作。
可以使用XML編寫上述語法,如下所示:
<jsp:directive.taglib uri = "uri" prefix = "prefixOfTag" />
有關taglib
指令的更多詳細信息,請查看taglib指令。