水仁博客

          上善若水,仁恕載物
          隨筆 - 11, 文章 - 0, 評論 - 4, 引用 - 0
          數據加載中……

          Struts 2 Tag用法

           

          append 和 iterator

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/append-tag.shtml

           

          在Action類的execute方法中,實例化List對象 

          public String execute()throws Exception{
              myList = new ArrayList();
              myList.add("     myList.add("Deepak Kumar");
              myList.add("Sushil Kumar");
              myList.add("Vinod Kumar");
              myList.add("Amit Kumar");

           

              myList1 = new ArrayList();
              myList1.add("
              myList1.add("Himanshu Raj");
              myList1.add("Mr. khan");
              myList1.add("John");
              myList1.add("Ravi Ranjan");
              return SUCCESS;
            }

           

          jsp頁面中使用append和iterator兩個tag

           

          <s:append id="myAppendList">
                <s:param value="%{myList}" />
                <s:param value="%{myList1}" />
          </s:append>

             

          <s:iterator value="%{#myAppendList}">
                <s:property /><br>
          </s:iterator>


           

          generator 和 iterator

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/generator-tag.shtml


           

          在jsp中使用,'www.Roseindia.net,Deepak Kumar,Sushil Kumar,Vinod Kumar,Amit Kumar'這些內容被分行的顯示在頁面上。

          <s:generator val="%{'www.Roseindia.net,Deepak Kumar,Sushil Kumar,Vinod Kumar,Amit Kumar'}" separator=",">
              <s:iterator>
                <s:property /><br/>
              </s:iterator>
          </s:generator>

             
          參考:http://www.roseindia.net/struts/struts2/struts2controltags/GeneratorTagCountAttribute.shtml

          count="5" -->在jsp頁面中顯示前5個

          <s:generator val="%{'www.Roseindia.net,Deepak Kumar,Sushil Kumar,Vinod Kumar,Amit Kumar, Sanjay, Vijay '}" count="5" separator=",">
             <s:iterator>
                <s:property /><br/>
             </s:iterator>
          </s:generator>

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/GeneratorTagIdAttribute.shtml
          <s:generator val="%{'www.Roseindia.net,Deepak Kumar,Sushil Kumar,Vinod Kumar,Amit Kumar'}" count="4" separator="," id="myAtt" />
          <%
          Iterator i = (Iterator) pageContext.getAttribute("myAtt");
          while(i.hasNext()) {
            String s = (String) i.next(); %>
            <%=s%> <br/>
          <% }
          %>


           


          iterator

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/iterator-tag.shtml

          在Action類的execute方法中實例化一個List

          public String execute()throws Exception{
              myList = new ArrayList();
              myList.add("Fruits");
              myList.add("Apple");
              myList.add("Mango");
              myList.add("Orange");
              myList.add("Pine Apple");
              return SUCCESS;
            }


           

          在Jsp中可以通過list的名字來調用

          <s:iterator value="myList">
              <s:property /><br>
          </s:iterator>


           


          merge

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/merge-tag.shtml
          在Action類的execute方法中實例化兩個List
          public String execute() throws Exception{
              myList = new ArrayList();
              myList.add("www.Roseindia.net");
              myList.add("Deepak Kumar");
              myList.add("Sushil Kumar");
              myList.add("Vinod Kumar");
              myList.add("Amit Kumar");

              myList1 = new ArrayList();
              myList1.add("www.javajazzup.com");
              myList1.add("Himanshu Raj");
              myList1.add("Mr. khan");
              myList1.add("John");
              myList1.add("Ravi Ranjan");
              return SUCCESS;
            }


           

          在jsp中,用merge tag把兩個List合并,在iterator中用merge的id來調用

          <s:merge id="mergeId">
                  <s:param value="%{myList}" />
                  <s:param value="%{myList1}" />

          </s:merge>
          <s:iterator value="%{#mergeId}">
              <s:property /><br>
          </s:iterator>
          顯示順序:
          Display first element of the first list.
          Display first element of the second list.
          Display second element of the first list.
          Display second element of the second list.
          Display third element of the first list.
          Display thrid element of the second list.....and so on.


          subset

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/subsetTag.shtml

          public String execute() throws Exception{
              myList = new ArrayList();
              myList.add(new Integer(50));
              myList.add(new Integer(20));
              myList.add(new Integer(100));
              myList.add(new Integer(85));
              myList.add(new Integer(500));
              return SUCCESS;
            }


           

          調用Action類中的List

           <s:subset source="myList">
              <s:iterator>
                <s:property /><br>
              </s:iterator>
          </s:subset>
          在頁面上顯示前三個
          <s:subset source="myList" count="3">
              <s:iterator>
                <s:property /><br>
              </s:iterator>
          </s:subset>
          在頁面上顯示從2開始的3個
          <s:subset source="myList" count="3" start="2">
              <s:iterator>
                <s:property /><br>
              </s:iterator>
          </s:subset>

          action tag

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/action-tag.shtml

          The action tag is a generic tag that is used to call actions directly from a JSP page by specifying the action name and an optional namespace. The body content of the tag is used to render the results from the Action. Any result processor defined for this action in struts.xml will be ignored, unless the executeResult parameter is specified.

          在struts.xml中定義action映射
          <action name="actionTag" class="net.roseindia.actionTag">
                 <result name="success">/pages/genericTags/success.jsp</result>
          </action>

          public String execute() throws Exception{
              return SUCCESS;
            }


           

          在jsp頁面寫入下面代碼,那么當請求actionTag.action時,無論Action類net.roseindia.actionTag中怎么處理、如何設定頁面轉向,此請求直接轉到successs.jsp頁面

          <s:action name="success">
              <b><i>The action tag will execute the result and include it in this page.</i></b></div>
          </s:action>


           

          bean tag


          參考:http://www.roseindia.net/struts/struts2/struts2controltags/bean-tag.shtml
          定義一個包含name屬性的普通JavaBean,
          public class companyName {
           
            private String name;

            public void setName(String name){
              this.name =name ;
            }

            public String getName(){
              return name;
            }
          }


           

          在jsp中調用

          <s:bean name="net.roseindia.companyName" id="uid">
              <s:param name="name">RoseIndia</s:param>
              <s:property value="%{name}" /><br>
          </s:bean>


          date tag

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/date-tag.shtml

            private Date currentDate;
            public String execute() throws Exception{
              setCurrentDate(new Date());
              return SUCCESS;
            }

          <s:date name="currentDate" format="MM/dd/yy" />

          <s:date name="currentDate" format="MM/dd/yy hh:mm" />

          <s:date name="currentDate" format="MM/dd/yy hh:mm:ss" />

          Nice Date (Current Date & Time):<s:date name="currentDate" nice="false" />

          Nice Date:<s:date name="currentDate" nice="true" />


           


          include tage

          是不是可以替換frame

          <body>
              <h1><span style="background-color: #FFFFcc">Include Tag (Data Tags) Example!</span></h1>
                <s:include value="myBirthday.jsp" />
            </body>


          param tag

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/param-tag.shtml

          <ui:component>
                  <ui:param name="empname">Vinod</ui:param><br>
                  <ui:param name="empname">Amit</ui:param><br>
                  <ui:param name="empname">Sushil</ui:param>
          </ui:component>


          Case 1. <param name="empname">Amit</param>  Here the value would be evaluated to the stack as a java.lang.String object.
          Case 2. <param name="empname" value="Vinod"/> Here the value would be evaluated to the stack as a java.lang.Object object.


          set tag

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/set-tag.shtml


           

          set tag給指定范圍內的變量賦值,得到name-value值對
          賦值:<s:set name="technologyName" value="%{'Java'}"/>
          調用:Technology Name: <s:property value="#technologyName"/>

          set tag is used to assign a value to a variable in a specified scope. The parameters name and value in the tag <s:set name="technologyName" value="%{'Java'}"/> acts as the name-value pair. Here we set the parameters as name="technologyName" value="Java".

          Text Tag

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/text-tag.shtml


           

          struts.xml 文件中定義

          <action name="textTag" class="net.roseindia.textTag">
                 <result>/pages/genericTags/textTag.jsp</result>
          </action>


          在textTag.java文件所在包下,創建一個package.properties,內容如下:

          webname1 = http://www.RoseIndia.net
          webname2 = http://www.javajazzup.com
          webname3 = http://www.newstrackindia.com


           

          在jsp文件調用,如下,前三行顯示package.properties對應信息;第四行顯示Vinod, Amit, Sushil, .......;最后一行empname

          <s:text name="webname1"></s:text><br>
          <s:text name="webname2"></s:text><br>
          <s:text name="webname3"></s:text><br>
          <s:text name="empname">Vinod, Amit, Sushil, .......</s:text><br>
          <s:text name="empname"></s:text>

          property tag

          參考:http://www.roseindia.net/struts/struts2/struts2controltags/property-tag.shtml


           

          定義個JavaBean

          public class companyName {
           
            private String name;

            public void setName(String name){
              this.name =name ;
            }

            public String getName(){
              return name;
            }
          }


           

          第二行給companyName的name屬性賦值;第三行顯示該值(RoseIndia),相當于調用了getName()方法;,

          <s:bean name="net.roseindia.companyName" id="uid">
          <s:param name="name">RoseIndia</s:param>
            <s:property value="%{name}" /><br>
          </s:bean>
          <!-- Default value -->
          <s:property value="name" default="Default Value" />


          <s:property value="%{name}" /> it prints the result of myBean's getMyBeanProperty() method.
          <s:property value="name" default="Default Value" /> it prints the result of companyName's
          getName() method and if it is null, print 'a default value' instead
          .

           

           

          posted on 2007-12-30 19:43 水仁圭 閱讀(3641) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 信丰县| 酉阳| 儋州市| 集贤县| 邯郸县| 东阿县| 鲜城| 泗水县| 南川市| 南皮县| 漳平市| 潮州市| 吴忠市| 天气| 泰州市| 襄垣县| 中阳县| 鹤壁市| 翁源县| 凭祥市| 柘城县| 象州县| 江阴市| 丰原市| 手游| 富民县| 湛江市| 怀柔区| 辰溪县| 嫩江县| 岐山县| 新昌县| 施甸县| 阿城市| 清水河县| 兴山县| 马边| 门头沟区| 松原市| 文登市| 安远县|