1. 程式人生 > >常用的JSP指令和動作

常用的JSP指令和動作

JSP中的指令能夠影響JSP翻譯生出的java類的結構,如page指令、include指令。

JSP提供了一系列的動作,能夠更位便捷地完成一些動態功能,如forward、include等。

JSP指令

JSP中指令的語法:

<%@ directive {attr="value"}* %>
其中directive為指令名,attr指該指令對應的屬性名,一個指令可能有多個屬性。

(1)page指令。

page指令共有13個屬性。page指令作用於整個JSP頁面,可以將指令放在JSP頁面任何一個位置。

1、import屬性:用來引入JSP檔案需要使用的類。

<%@ page import="java.util.*,java.io.*" %>
<%@ page import="com.etc.vo.*" %>
上述程式碼可以在JSP檔案中使用,引入需要使用的類。可以使用都好同時引入多個包,也可以在一個JSP檔案中多次使用import。(import是page指令中唯一一個可在同一個JSP檔案中多次使用的屬性)

2、pageEncoding屬性:設定JSP檔案的頁面編碼格式。

<%@ page pageEcoding="gb2312" %>
設定當前JSP頁面的編碼格式是gb2312,可以顯示中文。

3、session屬性:設定JSP頁面是否生出session物件。該屬性預設值為true,可以設定成false。

<%@ page session="false" %>
session屬性設定為false的話,該JSP翻譯生出的類中將沒有內建物件session,該JSP不會參與會話。

4、errorPage屬性:設定JSP頁面的錯誤頁面。當JSP中發生異常或錯誤卻沒有被處理時,容器將請求轉發到錯誤頁面。

<%@ page errorPage="error.jsp" %>
This is my JSP page.<br>
<% =100/0 %><br>
訪問該頁面會發生數學異常,而且並沒有對異常進行處理,將會跳轉到錯誤頁面error.jsp。
5、isErrorPage屬性:該屬性預設值是false,可以設定為true。在JSP的錯誤頁面中,將isErrorPage設定為true,則該頁面翻譯生出的Java類中將生出exception內建物件。

JSP頁面是不是隻有設定了isErrorPage=true後,才能作為錯誤頁面使用?

不是,任何一個JSP頁面都可以作為錯誤頁面,只要通過“errorPage=”設定即可。而設定isErrorPage=true後,該錯誤頁面可以使用exception內建物件,否則不能使用exception內建物件。

(2)include指令。

include指令作用:用來靜態包含其他頁面(發生在翻譯期間)。

如存在一個copyright.jsp檔案,程式碼如下:

[email protected] author:<% =request.getParameter("author") %><br>
2013-2017
如果在其他JSP頁面中,也需要這樣的程式碼片段,就可以使用include指令進行包含,不需要重新編寫。

如果index.jsp要包含copyright.jsp,只要在需要包含的位置加入如下程式碼即可:

<%@ include file="copyright.jsp"%>
但是如下方式將會發生錯誤:(copyright.jsp?author=etc這個路徑或檔案不存在)
<%@ include file="copyright.jsp?author=etc"%>
(include指令相當於將被包含頁面中的程式碼複製貼上到需要包含它的頁面的程式碼中,file=””中的屬性必須是已存在的檔案,否則會報異常。如果被包含頁面發生改變,主頁面也會隨之改變)


JSP動作


JSP中動作的語法與xml語法一致:
<jsp:action_name attribute1="value1" attribute2="value2">
其中action_name表示動作的名字,attribute表示動作的屬性。
(1)forward動作。
在JSP頁面中進行請求轉發。
<jsp:forward page="copyright.jap">
</jsp:forward>
上述程式碼將請求轉發到copyright.jsp頁面,類似於servlet中呼叫RequestDispatcher的forward方法進行請求轉發。
(2)include動作。
在JSP頁面中,進行動態包含(發生在執行期間)。
<jsp:include page="copyright.jsp">
</jsp:include>
<jsp:include>是動態包含的,發生在執行期間,並將響應結果同包含頁面的響應結果合併,生成最終的響應。類似於servlet中呼叫RequestDispatcher的include方法進行包含。因為是動態包含,所以可以在包含時傳遞請求引數。
<jsp:include page="copyright.jsp?author=etc">
</jsp:include>
(3)param動作。
傳遞引數,param動作往往作為子動作使用,為forward和include動作傳遞引數。
<jsp:forward page="copyright.jsp">
  <jsp:param name="author" value="etc"/>
</jsp:forward>
<jsp:include page="copyright.jsp">
  <jsp:param name="author" value="etc"/>
</jsp:include>
上述程式碼使用param為forward和include動作傳遞引數。

相關推薦

常用JSP指令動作

JSP中的指令能夠影響JSP翻譯生出的java類的結構,如page指令、include指令。 JSP提供了一系列的動作,能夠更位便捷地完成一些動態功能,如forward、include等。 JSP指令 JSP中指令的語法: <%@ directive {attr

JSP中的編譯指令動作指令的差別

font class 編譯 執行 gb2 ron 消息 腳本 con JSP中的編譯指令和動作指令的差別 1、編譯指令是通知Servlet引擎的處理消息。而動作指令僅僅是執行時的腳本動作 2、編譯指令是在將JSP編譯成Servlet時起作用,而動作指令可替換成J

Jsp-三種賦值方式、include指令動作元素的區別

一、三種賦值方式 1.value 說明:最直接的賦值方式 value賦值<br/> <jsp:useBean id="ls" class="model.Employee" scope="session" /> <jsp:s

JSP學習筆記(1)——Jsp指令動作元素內建物件

簡單來說,javaweb技術就是讓伺服器端能夠執行Java程式碼,之後返回資料給客戶端(瀏覽器)讓客戶端顯示資料 jsp頁面中可以巢狀java程式碼(java小指令碼)和巢狀Web前端(html,css,js)來顯示資料。 伺服器解析一個jsp,其實就是把jsp中的java程式碼編譯並執行,之後再返回一個St

include指令動作的區別

更改 方式 語法 之前 程序 url 設定 修改 方法 include指令: include可以在JSP頁面轉換成Servlet之前,將JSP代碼插入其中。它的主要優點是功能強大,所包含的代碼可以含有總體上影響主頁面的JSP構造,比如屬性、方法的定義和文檔類型的設定。inc

include的指令動作的區別

jsp頁面 參數 傳遞參數 include動作 靜態 文本 實現 字節碼 動作標簽 include指令是用於包含一個文本或代碼的文件(將include指令指定的文件內容插入到當前頁面內)。 include動作:當前JSP頁面動態包含一個文件,將當前JSP頁面、被包含的文件各

JSP指令動作元素

說明 als ima info http 緩沖區 lse jsp 動作 1、include指令:   語法:   <%@ include file = "URL" %> 2、include動作:   語法:   <jsp:include page = "U

Linux基礎(03)、常用基礎指令操作

編輯模式 開發 .so 虛擬 64位 use roo 分頁 刪除文件   目錄   一、什麽是Linux 二、常用基礎指令   2.1、vi編輯   2.2、Linux文件類型   2.3、常用指令:增、刪、改、查、其他 三、Linux的目錄和權限   3.1、目錄   3

Java EE入門教程系列第二章JSP(三)——JSP指令動作元件

2.3 指令與動作元件 2.3.1 page指令 page指令的基本語法為: <%@ page 屬性1="屬性1的值" 屬性2="屬性2的值"···%> 屬性值記得用“”或者‘’括起來,這樣寫比較規範,不易出錯。 舉例: <%@ page language=

JSP中include指令include動作的區別

1.include指令 語法格式:<%@include file="檔案的URL" %> 2.include動作 語法格式: 1)<jsp:include page="檔案的URL"/> 2)<jsp:include page="檔案的URL

JSP的3個編譯指令、7個動作指令9個內建物件

3個編譯指令: 1、page:針對當前頁面的指令<%@ page ...%> 2、include:指定包含另一個頁面<%@ include file="jsp.jsp"%> 3、taglib:定義和訪問自定義標籤<%@ tag

JSP include編譯指令include動作指令區別

1. include編譯指令:      jsp中3大指令之一,其他還包括page 編譯指令,taglib編譯指令(這個用的很少)。include指令可以將一個外部檔案嵌入到當前檔案中,同時解析這個檔案中jsp語句。這個是靜態的include語句,會把目標頁面的編譯指令(p

JSP中include指令include動作區別詳解

我們都知道在JSP中include有兩種形式,分別是 <%@ include file=” ”%> <jsp:include page=” ” flush=”true”/> 前者是指令元素,後者是動作元素。具體它們將在何處用?如何用及它們有什麼區別?這應該是很多人看

JSP學習筆記(一):JSP語法指令

沒有 文件的 encoding 引入 2.0 .cn name blog .get 一、語法 1、腳本程序的語法格式:   腳本程序可以包含任意量的Java語句、變量、方法或表達式,只要它們在腳本語言中是有效的。 <% 代碼片段 %> 2、中文編碼問題   

include指令include動作的區別

響應 而且 https 屬性方法 clu 目錄 轉換 jce 指向 include指令和include動作都能實現將外部文檔包含到JSP文檔中的功能,名稱也很相似,非常容易混淆。include指令和include動作到底有什麽分別,哪一種方式會更好呢?1.include指令

include 指令include動作

include動作 語法 獨立 有一個 highlight 引擎 web服務 cnblogs 語法規則 include 指令:   文件加載指令,將其他文件插入jsp(java sever page)網頁,被插入的文件必須保證插入後形成的新文件符合jsp頁面的語法規則   

JSP九個內置對象及指令動作標簽

nco 功能 word use idt ica throw 輸出流 his 一、JSP九大內置對象 (一)JSP中無需創建就可以使用的9個對象 輸入輸出對象 1.response(HttpServletResponse):處理JSP生成的響應,然後將響應結果發送給客戶端.是

JSP6(JSP 指令JSP 動作元素)

value 用戶 page指令 font 數據庫 定義 err ebe pan 一.JSP指令用來設置整個JSP頁面相關的屬性 指令可以有很多個屬性,它們以鍵值對的形式存在,並用逗號隔開。 JSP中的三種指令標簽: Page指令 Page指令為容器提供當前頁面的使用說明。

jsp筆記2(編譯指令動作指令)

getpara html 丟失 另一個 value 默認 extend servlet encoding 一、jsp的編譯指令是通知jsp引擎的消息,不會生成輸出。 jsp的3個編譯指令: page:針對當前頁面的指令 include:包含另一個頁面的指令

JSP運行過程 JSP腳本 靜態動態包含 jsp指令 jsp內置對象jsp四大作用域 jsp動作元素 EL表達式 JSTL 設計模式 JSP開發模式 EL內置對象

forward 器) ram 什麽 重復 上下文 腳本元素 沒有 控制 Day38 JSP JSP的運行過程具體如下: (1)客戶端發出請求,請求訪問JSP文件。 (2)JSP容器先將JSP文件轉換成一個Java源文件(Java Servlet源程序),在轉換過程中,如果發