天天看點

struts2 常用标簽總結1. 使用Struts2的常用邏輯标簽2. 使用Struts2的常用UI标簽3. 總結

1. 使用Struts2的常用邏輯标簽

1.1 property标簽

  1. 功能說明

擷取對象的屬性值,目标對象預設位于ValueStack棧頂

  1. 标簽屬性
名稱 必選 類型 說明
value no Object

對象的屬性名稱,

預設直接輸出 ValueStack 棧頂對象

default String 預設值,如果 value 為 null 則輸出此值
escape Boolean 是否進行html 轉義,預設為 true
escapeJavaScript 是否進行JavaScript 轉義,預設為 false

eg:

<s:property value="user.userName"/>

1.2 if-elseif-else标簽

功能說明:

替代Java文法中的if/else

标簽屬性:

test yes 表達式,決定是否顯示if/else if 标簽體的内容
歡迎${user.name} ,
<s:if test="user.role == 'admin'">系統管理者</s:if>
<s:elseif test="user.role == 'member'">會員</s:elseif>
<s:else>遊客</s:else>
           

1.3 iterator标簽

替代Java語言中foreach的功能

類型 類型
true 被疊代的對象
status 疊代狀态,IteratorStatus對象

PS:不需要寫 status 的就會自動疊代,比如customers 這個集合,疊代的時候,直接寫value =name 就是 customer 的name了

<s:iterator value="products">
<s:property value="name"/>,<s:property value="price"/>
<br />
</s:iterator>           

2. 使用Struts2的常用UI标簽

2.1 簡單表單标簽

Struts2 Form UI Tag html tag
textfield input type="text" 文本輸入框
password input type="password" 密碼輸入框
textarea 多行文本輸入框
hidden input type="hidden" 隐藏域
file input type = "file" 檔案輸入框
submit input type="submit" 送出按鈕
reset input type ="reset" 重置按鈕
checkbox input type="checkbox" 複選框

2.2 select标簽

功能說明:自帶回顯功能

生成select标簽(含option)

list 集合 指定option清單項
listKey 如果list元素是複合對象,指定 option value 對象屬性
listValue 如果list 元素是複合對象,指定option text 對應屬性
emptyOption 是否添加空option
multiple 是否允許多選
headerKey 設定第一選項對應的 option value 對象屬性
headerValue 設定第一選項對應的 option text 對象屬性
PS:複合對象的意思是如果是集合會自動疊代。

eg : 集合

List<custoemr> customers

的下拉清單标簽的使用

<s:select list="customers" name="customer.custId"
    listKey="custId" listValue="custName"
    headerKey="" headerValue="===請選擇==="
    style="WIDTH: 180px">
</s:select>           

2.3 checkboxlist标簽

功能說明: 自帶回顯功能

生成一組checkbox

如果list 元素是複合對象,指定option value 對應屬性
PS:複合對象的意思是如果是集合會自動疊代

eg:

<s:checkboxlist name="favors" list="products" listKey="id" listValue="name"/>                   

2.3.1 checkboxlist 和 checkbox 的差別

  • checkbox 和 checkboxlist的用法首先需要搞清楚;

checkbox

适用的場景,例如是、否;有、無;符合、不符合;男、女等這樣的語境;

checkboxlist

适用于多個,例如興趣愛好:籃球、足球、乒乓球、玩遊戲、聽音樂等等;

2.4 radio 标簽

功能說明: 自帶回顯功能的,需要給 name 屬性是必須的

生成一組radio

标簽屬性:

name name 屬性是必須的,自帶回顯,還可以送出選中的值
<s:radio name="favorite" list="products" listKey="id" listValue="name"/>           

3. 總結

使用struts2 标簽的優缺點:

  • 優點
    • 自帶回顯功能,提升開發效率
    • 簡化代碼
  • 缺點
    • 隻能用于使用了 struts2 架構的代碼,複用率不高