Struts標記庫
----------------------------------------------
JSP視窗組件所使用的struts標記庫由四類標記組成:
2. Bean標記:用來在JSP頁中管理bean
3. 邏輯標記:用來在JSP頁中控制流程
4. HTML標記:用來生成HTML標記,在表單中顯示數據,使用會話ID對URL進行編程
5. 模板標記:使用動態模板構造普通格式的頁
2.1 Bean標記
這個標記庫中包含用于定義新bean、訪問bean及其屬性的標記。Struts框架提供了多種自定義標記用來在JSP頁中處理JavaBean。這些標記被封裝在一個普通的標記庫中,在文件struts-bean.tld中定義了它的標記庫描述器。Bean標記庫將標記定義在四個子類別中:
創建和復制bean的標記
腳本變量定義標記
bean翻譯標記
消息國際化標記
2.1.1 Bean復制標記
可定義新bean,可復制現有bean,還可從現有bean復制屬性。
<bean:define>標記用來:
定義新字符串常數
將現有的bean復制到新定義的bean對象
復制現有bean的屬性來創建新的bean
<bean:define>標記屬性:
屬性描述Id 新定義的bean腳本變量名稱,必須設置Type 定義引入腳本變量的類value 為id屬性定義的腳本變量分配一個新的對象Name 目標bean的名稱。若value屬性沒有設置,這個屬性就必須設置property Name屬性定義的bean的屬性名稱,用來定義新的bean
13
Scope 源bean的作用域。若沒有設置,搜索范圍是從頁作用域到應用程序作用域toScope 目標bean的作用域。若沒有設置,默認值是頁作用域
例如:定義一個bean:
<bean:define id=”test” value=”this is a test”/>
源bean在頁作用域中被拷貝大哦請求作用域中的另一個bean:
<bean:define id=”targetBean” name=”sourceBean”
scope=”page” toScope=”request”/>
2.1.2 定義腳本變量的標記
從多種資源中定義和生成腳本變量,這些資源包括cookie,請求參數,HTTP標頭等等。屬性如下:
屬性描述Id 腳本變量和要定義的頁作用域屬性的名稱Name cookie/標頭/參數的名稱multiple 如果這個屬性設置了任意一個數值,所有匹配的cookie都會被積累并存儲到一個Cookie[](一個數組)類型的bean里。若無設置,指定cookie的第一個值將作為Cookie類型的值value 如果沒有匹配的cookie或數值,就返回這個屬性指定的默認值
例如:
<bean:cookie id=”myCookie” name=”userName”/>
腳本變量名稱是myCookie,用來創建這個屬性的cookie的名稱是userName。
<bean:header id=”myHeader” name=”Accept-Language”/>
腳本變量名稱是myHeader,請求標頭的名稱是Accept-Language.
<bean:parameter id=”myParameter” name=”myParameter”>
腳本變量名稱是myPatameter,它保存的請求參數的名稱也是myParameter.
<bean:include>標記將對一個資源的響應進行檢索,并引入一個腳本變量和字符串類型的頁作用域屬性。這個資源可以是一個頁,一個ActionForward或一個外部URL。與<jsp:include>的不同是資源的響應被存儲到一個頁作用域的bean中,而不是寫入到輸出流。屬性如下:
屬性描述Id 腳本變量和要定義的頁作用域屬性的名稱Page 一個內部資源forward 一個ActionForward Href 要包含的資源的完整URL
例如:
<bean:include id=”myInclude” page=”MyJsp?x=1”/>
腳本變量的名稱是myInclude,要檢索的響應來自資源MyJsp?x=1。
<bean:resource>標記將檢索web應用中的資源,并引入一個腳本變量和InputStream或字符串類型的頁作用域屬性。如果在檢索資源時發生問題,就會產生一個請求時間異常。屬性如下:
屬性描述
文章來源于領測軟件測試網 http://www.kjueaiud.com/