Struts 2 的資料標籤主要用於操作頁面上顯示的資料。下面列出的是重要的資料標籤:
此標記使開發人員能夠直接從JSP頁面呼叫動作指定動作的名稱和一個可選的名稱空間。標籤的主體內容是用行動來呈現結果。任何結果處理器定義在struts.xml這個動作將被忽略,指定除非executeResult引數。
<div>Tag to execute the action</div> <br /> <s:action name="actionTagAction" executeResult="true" /> <br /> <div>To invokes special method in action class</div> <br /> <s:action name="actionTagAction!specialMethod" executeResult="true" />
將用於另一個JSP頁面中包含另一個JSP檔案。
<-- First Syntax --> <s:include value="myJsp.jsp" /> <-- Second Syntax --> <s:include value="myJsp.jsp"> <s:param name="param1" value="value2" /> <s:param name="param2" value="value2" /> </s:include> <-- Third Syntax --> <s:include value="myJsp.jsp"> <s:param name="param1">value1</s:param> <s:param name="param2">value2</s:param> </s:include>
bean標籤範例化一個類,符合JavaBeans規範。此標記的主體可以包含多個元素:引數設定該類別的任何mutator方法。如果var屬性設定在BeanTag上,它會放置到堆疊上下文的bean範例。
<s:bean name="org.apache.struts2.util.Counter" var="counter"> <s:param name="first" value="20"/> <s:param name="last" value="25" /> </s:bean>
date標籤,將讓在一個快速和容易的方式格式化日期。可以指定自定義格式(如“DD/ MM / YYYY HH:MM”),可以生成易讀的符號(如“2小時,14分鐘”),或者可以依傍預定義的格式關鍵 struts.date.format 屬性檔案。
<s:date name="person.birthday" format="dd/MM/yyyy" /> <s:date name="person.birthday" format="%{getText('some.i18n.key')}" /> <s:date name="person.birthday" nice="true" /> <s:date name="person.birthday" />
這些引數標籤可用於引數其他標籤。該標籤具有以下兩個引數。
name (String) - 引數的名稱
value (Object) - 引數的值
<pre> <ui:component> <ui:param name="key" value="[0]"/> <ui:param name="value" value="[1]"/> <ui:param name="context" value="[2]"/> </ui:component> </pre>
這些屬性標籤是用來獲取屬性的值,這將預設堆疊的頂部,如果沒有指定。
<s:push value="myBean"> <!-- Example 1: --> <s:property value="myBeanProperty" /> <!-- Example 2: -->TextUtils <s:property value="myBeanProperty" default="a default value" /> </s:push>
這些push標籤是用來推堆疊簡化使用。
<s:push value="user"> <s:propery value="firstName" /> <s:propery value="lastName" /> </s:push>
這些set標籤分配一個值給一個變數在指定的範圍內。它是有用的,當想分配一個變數到複雜的表示式,然後簡單地參照變數每次而不是複雜的表達。可用的範圍是application, session, request, page和行動。
<s:set name="myenv" value="environment.name"/> <s:property value="myenv"/>
這些 text 標籤是用來呈現一個i18n 文字訊息。
<!-- First Example --> <s:i18n name="struts.action.test.i18n.Shop"> <s:text name="main.title"/> </s:i18n> <!-- Second Example --> <s:text name="main.title" /> <!-- Third Examlpe --> <s:text name="i18n.label.greetings"> <s:param >Mr Smith</s:param> </s:text>
這些URL標籤是用來建立一個URL。
<-- Example 1 --> <s:url value="editGadget.action"> <s:param name="id" value="%{selected}" /> </s:url> <-- Example 2 --> <s:url action="editGadget"> <s:param name="id" value="%{selected}" /> </s:url> <-- Example 3--> <s:url includeParams="get"> <s:param name="id" value="%{'22'}" /> </s:url>