JavaWeb框架_Struts2_(五)----->Struts2的標簽庫
1. Struts2的標簽庫
- 標簽庫概述
- 數據標簽
- 流程控制標簽
- 表單標簽
- 非表單標簽
2. 具體內容
2.1 Struts2標簽庫概述
Struts2的標簽庫可以分為以下3類:用戶界面標簽、非用戶界面標簽、AJAX標簽;
2.1.1 Struts2標簽庫的分類和使用
1. 從上圖中可以看出,標簽的分類如下:
(1) 用戶界面標簽(UI標簽)
UI標簽主要用來生成HTML元素的標簽,又分為表單標簽和非表單標簽。表單標簽主要用於生成HTML頁面的form元素,以及普通表單元素的標簽。非表單元素標簽主要用於在頁面生成一些非表單的可視化元素。
(2) 非用戶界面標簽(非UI標簽)
非UI標簽主要用於數據訪問以及邏輯控制,包括數據訪問標簽和邏輯控制標簽。數據訪問標簽,主要用於輸出值棧(ValueStack)中的值、完成國際化等功能的標簽。流程控制標簽,主要用於實現分支、循環等流程控制標簽。
(3) AJAX標簽
AJAX標簽用於支持Ajax效果。
2. Struts2標簽的使用要在JSP頁面代碼的頂部,添加以下代碼:
<%@taglib prefix = "S" uri = "/struts-tags" %>
2.2 Struts2的數據標簽
Struts2主要的數據標簽如下表格所示:
標簽名 | 描述 |
action | 用於JSP頁面直接調用Action,當需要調用Action時,可以指定Action的namespace,若指定了executeResult參數的值為true,該標簽還會將Action的處理結果(視圖頁面) |
bean | 用於創建一個JavaBean實例。如果指定了id屬性,則可以將創建的JavaBean實例放入Stack Context中 |
date | 用於創建一個JavaBean實例。如果指定id屬性 |
debug | 用於在頁面上生成一個調試鏈接,當單擊該鏈接時,可以看到ValueStack和StackContext中的內容 |
il8n | 用於指定國際化資源文件的baseName |
include | 用於在JSP頁面中包含其他的JSP或Servlet資源 |
param | 用於設置一個參數,通常是用作為bean標簽、url標簽的子標簽 |
push | 用於將某個值放入ValueStack的棧頂 |
set | 用於設置一個新變量,並且可以將新變量放入指定的範圍內 |
text | 用於輸出國際化消息 |
url | 用於生成一個URL地址 |
property | 用於生成輸出某個值,包括輸出ValueStack、Stack Context和Action Context中的值 |
2.3 Struts2的流程控制標簽
Struts2主要的流程控制標簽如下表格所示:
標簽名 | 描 述 |
if/elseif/else | 用於控制選擇輸出的標簽 |
append | 用於將多個集合拼接成為一個新的集合 |
gennerator | 用於將一個字符串解析成一個集合 |
iterator | 用於將集合叠代輸出 |
merge | 用於將多個集合拼接成一個新的集合,但與append拼接方式不同 |
sort | 用於對集合進行排序 |
subset | 用於截取集合的部分元素,形成一個新的集合 |
2.4 Struts2的表單標簽
Struts2的表單標簽是用戶最常用的標簽,這些表單標簽都包含了非常多的屬性,但有很多屬性是完全相通的。大部分表單標簽和HTML標簽一一對應。這裏不再介紹。
2.5 Struts2的非表單標簽
Struts2有如下非表單標簽:
- actionerror:如果Action實例的getActionErrors()方法返回不為null,則該標簽負責輸出該方法返回的系列錯誤;
- actionmessage:如果Action實例的getActionMessage()方法返回不為null,則該標簽負責輸出該方法返回的系列消息;
- fielderror:如果Action實例存在表單域的類型轉換錯誤、校驗錯誤、則該標簽負責輸出這些錯誤提示。
我覺得Struts2標簽庫,這一板塊沒必要深究,認真看了看,更多的是記憶的東西,用的多了就記住了。所以,項目中遇到忘記了的標簽,直接查一下就好了,這樣效果也比較好。
JavaWeb框架_Struts2_(五)----->Struts2的標簽庫