在本章中,我們將介紹和學習JSP中的指令。這些指令向容器提供指示和說明,告訴容器如何處理JSP處理的請求和響應。
JSP指令影響servlet類的整體結構。它通常具有以下形式 -
<%@ directive attribute = "value" %>
指令可以有多個屬性,可以將其列為鍵值對,並以逗號分隔。
@
符號和指令名稱之間,以及最後一個屬性和關閉%>
之間的空格是可選的。
JSP中有三種型別的指令標籤 -
序號 | 指令 | 說明 |
---|---|---|
1 | <%@ page ... %> |
定義頁面相關屬性,如指令碼語言,錯誤頁面和緩衝要求。 |
2 | <%@ include ... %> |
在編譯階段包括檔案。 |
3 | <%@ taglib ... %> |
宣告頁面中使用的包含自定義操作的標籤庫 |
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
指令相關所有上述屬性的更多詳細資訊。請參考:/20/219/8450.html
include
指令用於在編譯階段包括一個檔案。這個指令告訴容器在編譯階段將其他外部檔案的內容合併到當前JSP檔案中。可在JSP頁面的任何位置使用include
指令進行編碼。
本指令的一般用法形式如下:
<%@ include file = "relative url" >
include
指令中的檔案名實際上是一個相對URL。如果只指定一個沒有關聯路徑的檔案名,那麼JSP編譯器會假定該檔案與JSP在同一個目錄中。
可以使用XML編寫上述程式碼效果相同,如下所示:
<jsp:directive.include file = "relative url" />
有關include
指令的更多詳細資訊,請檢視連結:include指令
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指令。