数据标签:
(一)action: 该标签用于JSP页面直接调用一个Action,通过指定executeResult参数,还可以将
该Action的处理结果包含到本页面中来;
(1) id :这是一个可选属性,该属性将会作为该Action的引用ID。
(2)name :这是一个必填属性,通过该属性指定该标签调用哪个Action。
(3)namespace :这是一个可选属性,该属性指定该标签调用的Action所在的Action。
(4)executeResult :这是一个可选属性,该属性指定是否要将Action的处理结果包含到本页面。
该属性默认值是false,即不包含。
(5)ignoreContentParams :这是一个可选属性,他指定该页面的请求参数,是否需要传入调用
的Action,该参数默认值为false,即将参数可以传入Action;
<!--将结果返回到actionName.action的页面中,但参数传递不进Action -->
<s:action name="actionName" executeResult="true" ignoreContentParams="true" />
--------------------------------------------------------------------------------------
(二)bean:该标签用于创建一个JavaBean实例,如果指定了id属性,则可以将创建的JavaBean实例
放入 Stack Content中;
(1) id :这是一个可选属性,如果指定了id属性,则该JavaBean实例会被放入 Stack Content
中(并不是ValueStack),从而允许直接通过id属性来访问该JavaBean实例。
(2)name :这是一个必填属性,该属性指定要实例化的JavaBean的实现类。
注意:
在bean标签的标签体内,bean标签创建的JavaBean实例位于ValueStack的顶端;但一旦该bean
标签一结束了,该bean标签创建的JavaBean实例将被移除ValueStack,除非指定了id属性(就可以
在Stack Context中访问该实例),否则将无法访问该JavaBean实例。
<!--创建bean时未使用id属性-->
<s:bean name="lee.Person">
<s:param name="name" value=" 'zhengyong' "/>
<s:param name="age" value=" '22' "/>
<!--因为该bean的lee.Person实例位于ValueStack的栈顶,在bean的标签内,故可以直接访问-->
<s:property value="name" />
<s:property value="age" />
</s:bean>
<!--创建bean时指定了id属性-->
<s:bean name="lee.Person" id="p">
<s:param name="name" value=" 'zhengyong' "/>
<s:param name="age" value=" '22' "/>
</s:bean>
<!--根据该JavaBean的实例指定的id来访问-->
<s:property value="#p.name" />
<s:property value="#p.age" />
------------------------------------------------------------------------------------------
(三)date:除了可以用于格式化输出一个日期;还可以计算指定日期和当前时刻之间的时差。
(1)format :这是一个可选属性,如果指定了该属性,将根据该属性指定的格式来格式化日期;
(2) nice : 这是一个可选属性,该属性只能为true,或者false.他用于指定是否输出指定日期
和当前时刻之间的时差。该属性默认是false,即表示不输出时差。
(3) name :这是一个必填属性,该属性指定要格式化的日期值。
(4) id :这是一个可选属性,如果指定了引用该元素的id值。
<!--如果没有指定nice,则按format进行,如果2种均指定了则按nice进行-->
<s:date name="#attr.nowTime" format="dd/MM/yyyy" nice="false" />
------------------------------------------------------------------------------------------
(四)push :用于将某个值放入ValueStack的栈顶;
(1)value :这是一个必填属性,该属性指定需要放到Valuestack栈顶的值;
(2)id :这是一个可选属性,如果指定了引用该元素的id值。
<!--创建bean时指定了id属性-->
<s:bean name="lee.Person" id="p">
<s:param name="name" value=" 'zhengyong' "/>
<s:param name="age" value=" '22' "/>
</s:bean>
<!--使用push标签把Stack Context中的p实例放入Valuestack栈顶->
<s:push value="#p" />
<s:property value="name"/><br/>
</s:push>
------------------------------------------------------------------------------------------------
(五)set :用于设置一个新变量,并可以将新变量放入指定的范围内;
(1)name : 这是一个必填属性,重新生成的新变量的名字;
(2)scope :这是一个可选属性,指定新变量被放置的范围,该属性可以接受application、session、
request、page、action 5 个值,如果没有指定,默认放于 Stack Context 中。
(3)value : 这是一个可选属性,指定将赋给变量的值。如果没有指定该属性,则将ValueStack栈顶
的值赋给新变量。
(4)id : 这是一个可选属性,如果指定了引用该元素的ID。
<!-- 将 Stack Context 中的P值放入默认范围内 -->
<s:set value="#p" name="xxx" />