JSP動作包括:
jsp:include:在頁面被請求的時候引入一個檔案。
jsp:useBean:尋找或者執行個體化一個JavaBean。
jsp:setProperty:設定JavaBean的屬性。
jsp:getProperty:輸出某個JavaBean的屬性。
jsp:forward:把請求轉到一個新的頁面。
jsp:plugin:根據瀏覽器類型為Java外掛程式產生OBJECT或EMBED標記。
一、Include指令
<jsp:include>標籤表示包含一個靜態或者動態檔案。
文法:
<jsp:include page="path" flush="true" />
or
<jsp:include page="path" flush="true">
<jsp:param name="paramName" value="paramValue" />
</jsp:include>
註:
1、page="path" 為相對路徑,或者代表相對路徑的運算式。
2、flush="true" 必須使用flush為true,它預設值是false。
3、<jsp:param>子句能讓你傳遞一個或多個參數給動態檔案,也可在一個頁面中使用多個<jsp:param>來傳遞多個參數給動態檔案。
二、Forward指令
<jsp:forward>標籤表示重新導向一個靜態html/jsp的檔案,或者是一個程式段。
文法:
<jsp:forward page="path"} />
or
<jsp:forward page="path"} >
<jsp:param name="paramName" value="paramValue" />……
</jsp:forward>
註:
1、page="path" 為一個運算式,或者一個字串。
2、<jsp:param> name 指定參數名,value指定參數值。參數被發送到一個動態檔案,參數可以是一個或多個值,而這個檔案卻必須是動態檔案。要傳遞多個參數,則可以在一個JSP檔案中使用多個<jsp:param>將多個參數發送到一個動態檔案中。
三、UseBean指令
<jsp:useBean>標籤表示用來在JSP頁面中建立一個BEAN執行個體並指定它的名字以及作用範圍。
文法:
<jsp:useBean id="name" scope="page | request | session | application" typeSpec />
其中typeSpec有以下幾種可能的情況:
class="className" | class="className" type="typeName" | beanName="beanName" type="typeName" | type="typeName" |
註:
你必須使用class或type,而不能同時使用class和beanName。beanName表示Bean的名字,其形式為“a.b.c”。
四、GetProperty指令
<jsp:getProperty>標籤表示擷取BEAN的屬性的值並將之轉化為一個字串,然後將其插入到輸出的頁面中。
文法:
<jsp:getProperty name="name" property="propertyName" />
註:
1、在使用<jsp:getProperty>之前,必須用<jsp:useBean>來建立它。
2、不能使用<jsp:getProperty>來檢索一個已經被索引了的屬性。
3、能夠和JavaBeans組件一起使用<jsp:getProperty>,但是不能與Enterprise Java Bean一起使用。
五、SetProperty指令
<jsp:setProperty>標籤表示用來設定Bean中的屬性值。
文法:
<jsp:setProperty name="beanName" prop_expr />
其中prop_expr有以下幾種可能的情形:
property="*" | property="propertyName" | property="propertyName" param="parameterName" | property="propertyName" value="propertyValue"
註:
使用 jsp:setProperty 來為一個Bean的屬性賦值;可以使用兩種方式來實現。
1、在jsp:useBean後使用jsp:setProperty:
<jsp:useBean id="myUser" … />
…
<jsp:setProperty name="user" property="user" … />
在這種方式中,jsp:setProperty將被執行。
2、jsp:setProperty出現在jsp:useBean標籤內:
<jsp:useBean id="myUser" … >
…
<jsp:setProperty name="user" property="user" … />
</jsp:useBean>
在這種方式中,jsp:setProperty只會在新的對象被執行個體化時才將被執行。
* 在<jsp:setProperty>中的name值應當和<jsp:useBean>中的id值相同。
六、Plugin指令
<jsp:plugin>標籤表示執行一個applet或Bean,有可能的話還要下載一個Java外掛程式用於執行它。
文法:
<jsp:plugin
type="bean | applet"
code="classFileName"
codebase="classFileDirectoryName"
[ name="instanceName" ]
[ archive="URIToArchive, ..." ]
[ align="bottom | top | middle | left | right" ]
[ height="displayPixels" ]
[ width="displayPixels" ]
[ hspace="leftRightPixels" ]
[ vspace="topBottomPixels" ]
[ jreversion="JREVersionNumber | 1.1" ]
[ nspluginurl="URLToPlugin" ]
[ iepluginurl="URLToPlugin" ] >
[ <jsp:params>
[ <jsp:param name="parameterName" value="{parameterValue | <%= expression %>}" /> ]+
</jsp:params> ]
[ <jsp:fallback> text message for user </jsp:fallback> ]
</jsp:plugin>
註:
<jsp:plugin>元素用於在瀏覽器中播放或顯示一個對象(典型的就是applet和Bean),而這種顯示需要在瀏覽器的java外掛程式。
當Jsp檔案被編譯,送往瀏覽器時,<jsp:plugin>元素將會根據瀏覽器的版本替換成<object>或者<embed>元素。注意,<object>用於HTML 4.0 ,<embed>用於HTML 3.2。
一般來說,<jsp:plugin>元素會指定對象是Applet還是Bean,同樣也會指定class的名字,還有位置,另外還會指定將從哪裡下載這個Java外掛程式。