1、指令元素語法:html
<%@ 指令名 屬性="值" %>
(一)page指令java
page指令能夠指定頁面使用的腳本語言、實現的接口,導入的軟件包等。web
用於設置JSP頁面的全局屬性,這些屬性將用於和JSP容器通訊,控制所生成的servlet結構。page指令做用整個JSP頁面,能夠將怕個指令放在文檔中任何地方。session
下表列出與Page指令相關的屬性:多線程
屬性 | 描述 |
---|---|
buffer | 指定out對象(輸出流)是否具備緩衝區,並設置緩衝區大小。none不具備緩衝功能,或者其餘具體數值,默認值爲8kb。<%@ page buffer=」none|nkb「 %> |
autoFlush | 指定緩衝區是否自動進行強制輸出,默認爲true。當爲true時,緩衝區滿時仍正常輸出,false時產生異常。當buffer爲none時,不能設置爲false。 <%@ page autoFlush=」true|false「 %> |
contentType | 指定JSP頁面的MIME格式以及網頁的編碼格式。默認格式爲ISO-8859-1。<%@ page contenType=」txt/html;charset=」ISO-8859-1「 %> |
errorPage | 指定當JSP頁面發生異常時須要轉向的錯誤處理頁面<%@ page errorPage=」error.jsp「 %> |
isErrorPage | 指定當前頁面是否能夠做爲另外一個JSP頁面的錯誤處理頁面,默認爲false。 <%@ page isErrorPage=」true|false「 %> |
extends | 指定義該JSP頁面生成的Servlet繼承於哪一個父類,必須指定該類全名,即包名加類名,通常使用默認值。少用,慎用,可能限制JSP頁面編譯能力。<%@ page extends=」繼承的父類「 %> |
import | 導入要使用的Java類,能夠是環境變量中所指定目錄下的類文件,也能夠是web項目WEB-INF下的classes目錄中的自定義文件。JSP默認導入的包有:java.lang.*;javax.servlet.*;javax.servlet.jsp.*;javax.servlet.http.*; page指令中惟一允許在同一文檔出現屢次的屬性。<%@ page import="導入的包名" %> |
info | 設置JSP頁面的相關信息,能夠爲任意字符串。可經過Servlet.getServletInfo來獲取該信息。<%@ page info=」this is a jsp page「 %> |
isThreadSafe | 指定JSP頁面是夠支持多線程使用,true時支持多線程,同時能處理多個用戶的請求,false則不能,只能當個用戶,默認爲true。 <%@ page isThreadSafe=」true|false「 %> |
language | 定義JSP頁面所用的腳本語言,默認是Java,目前只有java一種,不排除之後有其餘語言的加入。<%@ page language=」java「 %> |
session | 指定JSP頁面是否使用session,默認爲true.<%@ page session=」true|false「 %> |
isELIgnored | 指定是否執行EL表達式,true則忽略,不執行。默認爲false。<%@ pageisELIgnored=」ture|false「 %> |
pageEncodeing | 定義web容器對jsp響應的字符編碼,默認格式爲ISO-8859-1。<%@ pageEncodeing=」characterSetISO-8859-1「 %> |
(二)include指令jsp
page指令能夠指定頁面使用的腳本語言、實現的接口,導入的軟件包等。this
JSP能夠經過include指令來包含其餘文件。被包含的文件能夠是JSP文件、HTML文件或文本文件。include指令將會在jsp編譯時插入文件, 被包含的文件執行完,該JSP頁面才恢復執行。編碼
這個包含的過程是靜態包含(靜態包含:先包含後編譯;動態包含(include動做標記): 先 編譯 後 包含 )。url
注意:在被包含的文件中不要使用和主頁重複的HTML標籤。這樣會影響原jsp文件中一樣的標籤致使錯誤。spa
由於原文件和被包含文件能夠互相訪問彼此定義的變量和方法,因此要避免變量和方法在命名上的問題。
Include指令的語法格式以下:
<%@ include file="文件相對 url 地址" %>
(三) Taglib指令
JSP API容許用戶自定義標籤,一個自定義標籤庫就是自定義標籤的集合。
Taglib指令引入一個自定義標籤集合的定義,包括庫路徑、自定義標籤。
一個jsp頁面容許有多個taglib指令,但不能有重複的前綴
Taglib指令的語法:
<%@ taglib uri="uri" prefix="prefixOfTag" %>
uri屬性:定位標籤庫描述符的位置。惟一標識和前綴相關的標籤庫描述符,可使用絕對或相對URL。
tagDir屬性:指示前綴將被用於標識在WEB-INF/tags目錄下的標籤文件。
prefix屬性:定義了taglib前綴名稱。不可使用保留前綴和空前綴,遵循XML命名空間的命名約定。