WEB Struts2.2 經常使用的標籤及傳值總結

 要在JSP中使用Struts 2.0標誌,先要指明標誌的引入。經過在JSP的代碼的頂部加入如下代碼能夠作到這點。html

<%@taglib prefix="s" uri="/stru ts-tags" %>
java

一.     UI標誌 session

  1.         ifelseifelse

    描述:
    執行基本的條件流轉。 app

    參數: jsp

    名稱ide

    必需post

    默認性能

    類型url

    描述spa

    備註

    test

     

    Boolean

    決定標誌裏內容是否顯示的表達式

    else標誌沒有這個參數

    id

     

    Object/String

    用來標識元素的id。在UI和表單中爲HTMLid屬性

    <!--用set賦值,userName爲action傳到頁面的參數-->
    <s:set name="name" value="userName"/>
    <s:if test="#name=='test'">
    	Test
    </s:if>
    <s:elseif test="#name=='test2'">
    	Test2
    </s:elseif>
    
    <!--用EL表達式取值-->
    ${name}<br>
    
    <!--也能夠直接用EL表達式獲得userName-->
    ${userName}

  2. iterator

    描述:
    用於遍歷集合(java.util.Collection)或枚舉值(java.util.Iterator)。

    參數:

    名稱

    必需

    默認

    類型

    描述

    status

     

    String

    若是設置此參數,一個IteratorStatus的實例將會壓入每一個遍歷的堆棧

    value

     

    Object/String

    要遍歷的可枚舉的(iteratable)數據源,或者將放入新列表(List)的對象

    id

     

    Object/String

    用來標識元素的id。在UI和表單中爲HTMLid屬性

          action:

    private String[] res1 = new String[]{"a","b","c"};
    private List<String> res2 = new ArrayList<String>();
    res2.add("aa");
    res2.add("bb");

    jsp頁面:
    <s:set name="begin" value="0"/>
    <s:set name="end" value="2"/>
    <s:iterator id="iterator" value="res1" status="res" begin="#begin" end="#end">
     ${iterator},
    </s:iterator>

    或是:
    <!-- 
                一、此處的空property元素用於得到當前iterator的值 
                二、status被設成stuts,在iterator的裏面就能夠經過#stuts取得IteratorStatus的對象。IteratorStatus類包含當前序號信息,如是否第一個或最後一個,是否爲奇數序號。這些信息在咱們作格式化的時候,顯得很是有用。
            -->
            <ol>
                <s:iterator value="#request.names" status="stuts">                
                    <s:if test="#stuts.odd == true">
                        <li>White <s:property /></li>
                    </s:if>
                    <s:else>
                        <li style="background-color:gray" mce_style="background-color:gray"><s:property /></li>
                    </s:else>
                </s:iterator>
            </ol>

  3.  i18n

    描述:
    加載資源包到值堆棧。它能夠容許text標誌訪問任何資源包的信息,而不僅當前action相關聯的資源包。

    參數:

    名稱

    必需

    默認

    類型

    描述

    value

     

    Object/String

    資源包的類路徑(如com.xxxx.resources.AppMsg

    id

     

    Object/String

    用來標識元素的id。在UI和表單中爲HTMLid屬性

    <s:i18n name="log4j">
      <s:text name="log4j.appender.fileout.MaxFileSize" />
    </s:i18n>
      
  4.   set

    描述:
    set
    標籤賦予變量一個特定範圍內的值。當但願給一個變量賦一個複雜的表達式,每次訪問該變量而不是複雜的表達式時用到。其在兩種狀況下很是有用: 複雜的表達式很耗時 (性能提高) 或者很難理解 (代碼可讀性提升)

    參數:

    名稱

    必需

    默認

    類型

    描述

    name

     

    String

    變量名字

    scope

     

    String

    變量做用域,能夠爲application, session, request, page, action.

    value

     

    Object/String

    將會賦給變量的值

    id

     

    Object/String

    用來標識元素的id。在UI和表單中爲HTMLid屬性

  5.   text

    描述:
    支持國際化信息的標籤。國際化信息必須放在一個和當前action同名的resource bundle,若是沒有找到相應message,tag body將被看成默認message,若是沒有tag body,messagename會被做爲默認message

    參數:

    名稱

    必需

    默認

    類型

    描述

    name

     

    String

    資源屬性的名字

    id

     

    Object/String

    用來標識元素的id。在UI和表單中爲HTMLid屬性

  6.   url

    描述:
    該標籤用於建立url,能夠經過"param"標籤提供request參數。

    includeParams的值時'all'或者'get', param標籤中定義的參數將有優先權,也就是說其會覆蓋其餘同名參數的值。

    <%@ page contentType="text/html; charset=UTF-8" %>
    <%@ taglib prefix="s" uri="/struts-tags" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
        <head>
            <title>URL</title>
        </head>
        <body>
            <h3>URL</h3>            
            <a href='<s:url value="/i18n.jsp" ></a>'>i18n</a><br />
            <s:url id="url" value="/condition.jsp">
                <s:param name="name">Max</s:param>
            </s:url>        
            <s:a href="%{url}" mce_href="%{url}">if/elseif/else</s:a>
        </body>
    </html>

  7.  property

    描述:
    獲得'value'的屬性,若是value沒提供,默認爲堆棧頂端的元素。

    參數:

    名稱

    必需

    默認

    類型

    描述

    default

     

    String

    若是屬性是null則顯示的default

    escape

    true

    Booelean

    是否escape HTML

    value

    棧頂

    Object

    要顯示的值

 

 二.UI標誌

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
    <title>UI Tags Example</title>
    <s:head/>
</head>
<body>

<s:actionerror/>
<s:actionmessage/>
<s:fielderror />

<s:form action="exampleSubmit" method="post" enctype="multipart/form-data" tooltipConfig="#{'jsTooltipEnabled':'true'}">
    <s:textfield 
            label="Name" 
            name="name"
            tooltip="Enter your Name here" />

    <s:datepicker
            tooltip="Select Your Birthday"
            label="Birthday"
            name="birthday" />

    <s:textarea
            tooltip="Enter your Biography"
            label="Biograph"
            name="bio"
            cols="20"
            rows="3"/>

    <s:select
            tooltip="Choose Your Favourite Color"
            label="Favorite Color"
            list="{'Red', 'Blue', 'Green'}"
            name="favoriteColor"
            emptyOption="true"
            headerKey="None"
            headerValue="None"/>

    <s:select
            tooltip="Choose Your Favourite Language"
            label="Favourite Language"
            list="favouriteLanguages"
            name="favouriteLanguage"
            listKey="key"
            listValue="description"
            emptyOption="true"
            headerKey="None"
            headerValue="None"/>

    <s:checkboxlist
            tooltip="Choose your Friends"
            label="Friends"
            list="{'Patrick', 'Jason', 'Jay', 'Toby', 'Rene'}"
            name="friends"/>

    <s:checkbox
            tooltip="Confirmed that your are Over 18"
            label="Age 18+"
            name="legalAge"/>

    <s:doubleselect
            tooltip="Choose Your State"
            label="State"
            name="region" list="{'North', 'South'}"
            value="'South'"
            doubleValue="'Florida'"
            doubleList="top == 'North' ? {'Oregon', 'Washington'} : {'Texas', 'Florida'}" 
            doubleName="state"
            headerKey="-1"
            headerValue="---------- Please Select ----------"
            emptyOption="true" />

    <s:doubleselect
            tooltip="Choose your Vehical"
            label="Favourite Vehical"
            name="favouriteVehicalType"
            list="vehicalTypeList"
            listKey="key"
            listValue="description"
            value="'MotorcycleKey'"
            doubleValue="'YamahaKey'"
            doubleList="vehicalSpecificList"
            doubleListKey="key"
            doubleListValue="description"
            doubleName="favouriteVehicalSpecific" headerKey="-1"
            headerValue="---------- Please Select ----------"
            emptyOption="true" />

    <s:file
            tooltip="Upload Your Picture"
            label="Picture" 
            name="picture" />
            
    <s:optiontransferselect
            tooltip="Select Your Favourite Cartoon Characters"
            label="Favourite Cartoons Characters"
            name="leftSideCartoonCharacters" 
            leftTitle="Left Title"
            rightTitle="Right Title"
            list="{'Popeye', 'He-Man', 'Spiderman'}" 
            multiple="true"
            headerKey="headerKey"
            headerValue="--- Please Select ---"
            emptyOption="true"
            doubleList="{'Superman', 'Mickey Mouse', 'Donald Duck'}" 
            doubleName="rightSideCartoonCharacters"
            doubleHeaderKey="doubleHeaderKey"
            doubleHeaderValue="--- Please Select ---" 
            doubleEmptyOption="true"
            doubleMultiple="true" />
    
    <s:textarea
            label="Your Thougths"
            name="thoughts" 
            tooltip="Enter your thoughts here" />
            
    <s:submit onclick="alert('aaaa');" />
    <s:reset onclick="alert('bbbb');" />
</s:form>
    
</body>
</html>
  
相關文章
相關標籤/搜索