(5)Struts2 Struts的標籤庫

2021-07-25 10:56:21 字數 4056 閱讀 2733

-熟練掌握邏輯標籤的使用

-熟練掌握ui標籤的使用

-熟練掌握在struts2的標籤中使用ognl表示式

標籤為什麼使用標籤?

生成頁面效果

簡化功能的呈現

剝離頁面中的邏輯**

便於美工的維護

作為mvc框架的最重要的兩個部分就是控制器和檢視,檢視部分主要通過標籤來實現。

struts2的標籤庫基於ognl實現,相比於struts1的標籤庫區別主要在以下幾點:

(1)基於ognl實現的struts2標籤對於集合、陣列的訪問更加強大。

(2)所有標籤類別統一集中在乙個庫中

(3)整合了dojo的支援,頁面呈現更豐富。

(4)提供了ajax的支援

(5)不依賴於表現層技術

struts2標籤從功能上看主要分為

邏輯標籤

ui標籤

使用struts2標籤

<%

@taglib

prefix

="s"

uri=

"/struts-tags"

%>

邏輯標籤

(1)property標籤

用於使用ognl表示式輸出資料

例如:訪問context中session的資料

value

="#session.loginuser.username"

/>

訪問valuestack中action的屬性

value

="username"

/>

value

="#attr.msg"

/>

(2)if標籤、esle標籤

if標籤用於條件判斷

esle標籤必須結合if標籤使用,表示沒有滿足的情況

test

="#session.loginuser==null"

>

href

="#"

>

login

歡迎

value

="#session.loginuser.username"

/>

登陸

(3)set標籤

用來在context中新增乙個鍵值對

var :寫入contextvalue中的鍵

value:寫入contextvalue中的值,通過ognl獲取,如果值為基本資料型別通過單引號寫入

var=

"map"

value

="#"

>

(4)iterator標籤

用來迭代集合

var:

寫入contextvalue中的鍵

value:迭代的集合或陣列使用ognl獲取

status:每個元素的狀態

var=

"str"

value

="#list"

status

="status"

>

${}status.index+1}$

用於將多個集合拼成乙個集合,需要結合子標籤

var:

寫入contextvalue中的鍵

var=

"newlist"

>

value

="#list1"

>

value

="#list2"

>

:

/>

val=

"str"

value

="#newlist"

status

="status"

>

(6)subset標籤

用於對集合進行擷取

source:被擷取的集合

start:擷取的起始索引

count:擷取的數量

該標籤將產生乙個新的集合存入valuestack棧頂,標籤執行結束,該集合從棧頂移除,因此需要在標籤內進行迭代。

(7)bean標籤

用來建立物件

name:建立物件的class

var:

寫入contextvalue中的鍵

name

="com.niit.bean.user"

var=

"user"

>

name

="username"

value

="tom"

>

value

="#user.username"

/>

(8)date標籤

用來格式化時間

name:時間的值

format:格式化字串

nice:是否顯示時間差

name

="#date"

format

="yyyy-mm-dd hh:mm:ss"

/>

(9)include標籤

動態包含    包含jsp介面或servlet介面

value  包含的頁面路徑

(10)url標籤

產生乙個url位址

var:

寫入contextvalue中的鍵

var=

"loginurl"

action

="login.action"

>

href

="%"

>

login

%{}        

表示將字串按照ognl表示式來讀取,使得超連結既能夠使用常值,又可以使用變值。

ui標籤

struts2內建4個主題,通過theme屬性設定

******、xhtml、css_xhtml、ajax

常用的ui標籤

form

textfield

password

checkbox

radio

select

。。。。。。

ui標籤的使用與普通html標籤類似,只是標籤通過ognl與action建立了聯絡

特殊屬性

lable屬性    設定標籤對應的文字資訊,主題不能為******

name屬性    值為ognl表示式,獲取valuestack中的action屬性

特殊標籤

checkboxlist標籤

用來設定一組核取方塊

list    使用核取方塊呈現的集合值,使用ognl來獲取

listvalue    通過map集合呈現選項內容的值

listkey    勾選時獲取到的map集合中的鍵

Struts 2 Struts2 詳細配置

全域性配置 配置在packe 中,所有 action 的上面。頁面 頁面 區域性結果優先順序高於全域性。異常資訊配置 404異常 500異常 web.xml 配置 404 error.jsp 500 error.jsp 包 package 配置 所有的action 配置,都必須在包中。jsp頁面路徑...

Struts和struts2的不同

struts和struts2的不同點 1 action struts的action類要求繼承乙個基類。struts2的action類是通過實現介面。2 執行緒模式 struts action執行緒不安全的,單列的模式。struts2 action物件為每個請求產生乙個例項 3 servlet依賴 s...

Struts2字尾 深入Struts2

一 將action字尾變成html字尾 xmlversion 1.0 encoding utf 8 doctype struts public apache software foundation dtd struts configuration 2.1 en struts include file...