struts2 標籤庫詳解


1.1.往action裏傳值的使用方式:

<input name="userName" type="text" class="input6" size="15">
a. userName屬性需要在訪問的action中提供相應的屬性,並有SET/GET方法。
b. 可以不在訪問的action中提供相應的屬性,用request.getParameter(“userName”);1.2.顯示標籤 property 用於輸出指定值:
<s:property value=" userName "/> 當action返回到指定頁面是,可以通過該標籤顯示action中的屬性信息。(注 userName必須在action中存在,並有GET方法)。

1.3.往對象中傳值<s:textfield> 用於從頁面往action中的對象內傳值:
<s:text name="user. userName " id="username"/>
該標籤可以在頁面中向action中的實體對象內直接傳值。(注:在action中要存在user對象,並有SET/GET方法。)

1.4.判斷<s:if> </s:if> 用於在頁面中判斷指定數據
<s:if test="userName == admin">…. </s:if>
<s:else>…. </s:else>
該標籤用於對指定的數據進行判斷,但指定的數據必須在action中存在。

1.5.迭代<s:iterator>用於將List、Map、ArrayList等集合進行循環遍歷
<s:iterator value="userList" id="user" status="u">
<s:property value="userName"/></a>
</s:iterator>
該標籤用於將userList集合中的元素進行循環,用過property進行顯示集合中的指定元素值。

1.6.URL地址標籤,<s:url>用於生成一個URL地址,可以通過URL標籤指定的<s:param>子元素向URL地址發送請求參數
<s:url action=" ">
           <s:param name=" " value=""></s:param>
       </s:url>
其中action爲請求地址,param子元素爲地址後面所帶的參數。

1.7.超鏈接 <a href >一般和<s:url>標籤一起使用,用於帶多個參數。
<a href="
<s:url action=" ">
      <s:param name=" " value=""></s:param>
      <s:param name=" " value=""></s:param>
      <s:param name=" " value=""></s:param>
      </s:url>">
超鏈接</a>

1.8.set標籤,用於將某個值放入指定的範圍內。例如application,session等。
<s:set name="user" value="userName" scope=”request”/>
將user值放入request範圍內。

2. Struts2頁面開發中常用標籤使用規範:
1.1.通過<input name="userName" type="text" class=" " size="15">
往action中傳值,action中要有相應的屬性,並提供SET/GET方法。
(在數量少時可以使用request.getParameter(“userName”);)

1.2.在頁面顯示action傳來的數據,使用property標籤。需要顯示的數據從action中獲得。

1.3.往action中的實體對象內傳值,使用textfield標籤。

1.4.在頁面中判斷指定值使用<s:if>標籤。判斷數據從action中獲得。

1.5.在頁面中需要循環列表顯示的數據使用<s:iterator>標籤,列表數據從action中獲得。

1.6.URL地址和超鏈接可以使用<a href>和<s:url>,在傳多值時建議<a href>和<s:url>一起


實用的:


form基本標籤
   <h3>使用s:radio生成多個單選框</h3>
<s:form>
<!-- 使用簡單集合來生成多個單選框 -->
<s:radio name="a" label="請選擇" labelposition="top"
    list="{'a' , 'b' , 'c'}" value="選中的裏面的值集合"/>
<!-- 使用簡單Map對象來生成多個單選框 -->
<s:radio name="b" label="請選擇您想選擇出版日期" labelposition="top"
    list="#{'a':'111' , 'b':'222' , 'c':'333'}"
    listKey="key"
    listValue="value" value="選中的裏面的值集合"/>
<s:bean name="包名.類名" id="bs"/>
<!-- 使用集合裏放多個JavaBean實例來生成多個單選框 -->
<s:radio name="c" label="請選擇" labelposition="top"
    list="#bs.bean中集合屬性名"
    listKey="集合裏JavaBean實例屬性1"
    listValue="集合裏JavaBean實例屬性2" value="選中的裏面的值集合"/>
    
    
    <s:radio name="d" label="請選擇您想選擇出版日期" labelposition="top"
    list="#bs.map"
    listKey="key"
    listValue="value"/>
</s:form>
 
 
 <h3>使用s:select生成下拉選擇框</h3>
<s:form>
<!-- 使用簡單集合來生成下拉選擇框 -->
<s:select name="a" label="請選擇" labelposition="top" multiple="true"
    list="{'a' , 'b' , 'c'}" value="選中的裏面的值集合"/>
<!-- 使用簡單Map對象來生成下拉選擇框 -->
<s:select name="b" label="請選擇" labelposition="top"
    list="#{'a':'111' , 'b':'222' , 'c':'333'}"
    listKey="key"
    listValue="value" value="選中的裏面的值集合"/>
<s:bean name="包名.類名" id="bs"/>
<!-- 使用集合裏放多個JavaBean實例來生成下拉選擇框 -->
<s:select name="b" label="請選擇" labelposition="top" multiple="true"
    list="#bs.bean中集合屬性名"
    listKey="集合裏JavaBean實例屬性1"
    listValue="集合裏JavaBean實例屬性2" value="選中的裏面的值集合"/>
</s:form>

 
<h3>使用s:checkboxlist生成多個複選框</h3>
<s:form>
<!-- 使用簡單集合來生成多個複選框 -->
<s:checkboxlist name="a" label="請選擇" labelposition="top"
    list="{'a' , 'b' , 'c'}"/>
<!-- 使用簡單Map對象來生成多個複選框 -->
<s:checkboxlist name="b" label="請選擇" labelposition="top"
    list="#{'a':'111' , 'b':'222' , 'c':'333'}"
    listKey="key"
    listValue="value"/>
<s:bean name="包名.類名" id="bs"/>
<!-- 使用集合裏放多個JavaBean實例來生成多個複選框 -->
<s:checkboxlist name="b" label="請選擇" labelposition="top"
    list="#bs.bean中集合屬性名"
    listKey="集合裏JavaBean實例屬性1"
    listValue="集合裏JavaBean實例屬性2"/>
</s:form>

<s:bean> 可以設置值
 
<s:bean id="xxx" name="包名.類名">
    <s:param name="屬性名" value="屬性值"/>  ???取action的值設置不成功???  經測試value="name"時貌似存在bug
</s:bean>




發佈了31 篇原創文章 · 獲贊 1 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章