JSP 行為(動作)元素

來源:互聯網
上載者:User

標籤:tab   element   方法   文檔   允許   reference   name   back   har   

常見的屬性

所有的動作要素都有兩個屬性:id屬性和scope屬性。

  • id屬性:

    id屬性是動作元素的唯一標識,可以在JSP頁面中引用。動作元素建立的id值可以通過PageContext來調用。

  • scope屬性:

    該屬性用於識別動作元素的生命週期。 id屬性和scope屬性有直接關係,scope屬性定義了相關聯id對象的壽命。 scope屬性有四個可能的值: (a) page, (b)request, (c)session, 和 (d) application。

<jsp:include>動作元素

<jsp:include>動作元素用來包含靜態和動態檔案。該動作把指定檔案插入正在產生的頁面。文法格式如下:

<jsp:include page="相對 URL 地址" flush="true" />
<jsp:useBean>動作元素

jsp:useBean 動作用來載入一個將在JSP頁面中使用的JavaBean。

jsp:useBean動作最簡單的文法為:

<jsp:useBean id="name" class="package.class" />

 

在類載入後,我們既可以通過 jsp:setProperty 和 jsp:getProperty 動作來修改和檢索bean的屬性。

以下是useBean動作相關的屬性列表。

屬性 描述
class 指定Bean的完整包名。
type 指定將引用該物件變數的類型。
beanName 通過 java.beans.Beans 的 instantiate() 方法指定Bean的名字。

 

<jsp:setProperty>動作元素

jsp:setProperty用來設定已經執行個體化的Bean對象的屬性,有兩種用法。首先,你可以在jsp:useBean元素的外面(後面)使用jsp:setProperty,如下所示:

<jsp:useBean id="myName" ... />...<jsp:setProperty name="myName" property="someProperty" .../>

 

此時,不管jsp:useBean是找到了一個現有的Bean,還是新建立了一個Bean執行個體,jsp:setProperty都會執行。第二種用法是把jsp:setProperty放入jsp:useBean元素的內部,如下所示:

<jsp:useBean id="myName" ... >...<jsp:setProperty name="myName" property="someProperty"  value=" ".../></jsp:useBean>

 

此時,jsp:setProperty只有在建立Bean執行個體時才會執行,如果是使用現有執行個體則不執行jsp:setProperty。

jsp:setProperty動作有下面四個屬性,如下表:

name 它表示要設定屬性的是哪個Bean。

property 它表示要設定哪個屬性。有一個特殊用法:如果property的值是"*",表示所有名字和Bean屬性名稱字匹配的請求參數都將被傳遞給相應的屬性set方法。

value  該屬性用來指定Bean屬性的值。字串資料會在目標類中通過標準的valueOf方法自動轉換成數字、boolean、Boolean、 byte、Byte、char、Character。例如,boolean和Boolean類型的屬性值(比如"true")通過 Boolean.valueOf轉換,int和Integer類型的屬性值(比如"42")通過Integer.valueOf轉換。   value和param不能同時使用,但可以使用其中任意一個。

param  它指定用哪個請求參數作為Bean屬性的值。如果當前請求沒有參數,則什麼事情也不做,系統不會把null傳遞給Bean屬性的set方法。因此,你可以讓Bean自己提供預設屬性值,只有當請求參數明確指定了新值時才修改預設屬性值。

 

<jsp:getProperty>動作元素

jsp:getProperty動作提取指定Bean屬性的值,轉換成字串,然後輸出。文法格式如下:

<jsp:useBean id="myName" ... />...<jsp:getProperty name="myName" property="someProperty" .../>

 

下表是與getProperty相關聯的屬性:

屬性 描述
name 要檢索的Bean屬性名稱。Bean必須已定義。
property 表示要提取Bean屬性的值

 

<jsp:forward> 動作元素

 jsp:forward動作把請求轉到另外的頁面。jsp:forward標記只有一個屬性page。文法格式如下所示:

<jsp:forward page="相對 URL 地址" />

 

以下是forward相關聯的屬性:

屬性 描述
page page屬性包含的是一個相對URL。page的值既可以直接給出,也可以在請求的時候動態計算,可以是一個JSP頁面或者一個 Java Servlet.
<jsp:element> 、 <jsp:attribute>、 <jsp:body>動作元素

定義XML元素。動態是非常重要的,這就意味著XML元素在編譯時間是動態產生的而非靜態。

以下執行個體動態定義了XML元素:

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><!DOCTYPE html><html><head><meta charset="utf-8"><title>wqkant</title></head><body><jsp:element name="xmlElement"><jsp:attribute name="xmlElementAttr">   屬性值</jsp:attribute><jsp:body>   XML 元素的主體</jsp:body></jsp:element></body></html>
<jsp:text>動作元素

<jsp:text>動作元素允許在JSP頁面和文檔中使用寫入文本的模板,文法格式如下:

<jsp:text>模板資料</jsp:text>

 

JSP 行為(動作)元素

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.