Struts2 的數(shù)據(jù)標(biāo)簽主要用于操作頁(yè)面上顯示的數(shù)據(jù)。下面列出了主要的數(shù)據(jù)標(biāo)簽:
此標(biāo)簽允許開(kāi)發(fā)人員通過(guò)指定action名稱(chēng)和可選的命名空間直接從JSP頁(yè)面調(diào)用action。標(biāo)簽的正文內(nèi)容用于呈現(xiàn)action的結(jié)果。在struts.xml中為此action定義的任何結(jié)果處理程序?qū)?huì)被忽略,除非指定executeResult參數(shù)。
<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" />
這些include標(biāo)簽將用于在另一個(gè)JSP頁(yè)面中包含一個(gè)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標(biāo)簽實(shí)例化一個(gè)符合JavaBeans規(guī)范的類(lèi)。這個(gè)標(biāo)簽有一個(gè)主體,可以包含一些Param元素來(lái)設(shè)置任何mutator方法。如果在BeanTag上設(shè)置了var屬性,它將把實(shí)例化的bean放入值棧的Context中。
<s:bean name="org.apache.struts2.util.Counter" var="counter"> <s:param name="first" value="20"/> <s:param name="last" value="25" /> </s:bean>
data標(biāo)簽允許以快速簡(jiǎn)單的方式格式化日期。用戶(hù)可以指定自定義日期格式(例如“dd/MM/yyyy hh:mm”),可以生成易讀的符號(hào)(例如“在2小時(shí)14分鐘內(nèi)”),或者可以使用屬性文件中的key:“struts.date.format”來(lái)回退到預(yù)定義的格式。
<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" />
這些param標(biāo)簽可用于參數(shù)化其他標(biāo)簽。此標(biāo)簽具有以下兩個(gè)參數(shù)。
name(字符串) - 參數(shù)的名稱(chēng)
value(對(duì)象) - 參數(shù)的值
<pre> <ui:component> <ui:param name="key" value="[0]"/> <ui:param name="value" value="[1]"/> <ui:param name="context" value="[2]"/> </ui:component> </pre>
這些property標(biāo)簽用于獲取一個(gè)值的屬性,如果沒(méi)有指定,它將默認(rèn)為在值棧的頂部。
<s:push value="myBean"> <!-- Example 1: --> <s:property value="myBeanProperty" /> <!-- Example 2: -->TextUtils <s:property value="myBeanProperty" default="a default value" /> </s:push>
這些push標(biāo)簽用于推送堆棧中的值,以簡(jiǎn)化使用。
<s:push value="user"> <s:propery value="firstName" /> <s:propery value="lastName" /> </s:push>
這些set標(biāo)簽為指定范圍內(nèi)的變量賦值。當(dāng)你希望將變量分配給復(fù)雜表達(dá)式,然后僅僅引用該變量而不是復(fù)雜表達(dá)式時(shí),它是很有用的。可應(yīng)用的范圍是應(yīng)用程序,會(huì)話(huà),請(qǐng)求,頁(yè)面和action。
<s:set name="myenv" value="environment.name"/> <s:property value="myenv"/>
這些text標(biāo)簽用于呈現(xiàn)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標(biāo)簽用于創(chuàng)建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>
更多建議: