Struts2标签的<s:set标签的用法

原创 2011年09月27日 13:54:16

  set标签

set标签 用于将某个值放入指定范围内。例如application、session范围等。

当某个值所在的对象图深度非常深时,例如如下:person.worker.wife.parent.age,每次访问该值不仅性能地下,而可读性也很差。解决这个问题,可以将改该值设置成一个新值,并放入特定范围内。

set标签属性:

  1. name: 必填,重新生成的新变量的名字
  2. scope: 可选,指定新变量被放置的范围,该属性可以接受application、session、request、page或action 5个值。如果没有指定,默认是放置在Stack Context中。
  3. value: 可选,指定将赋给变量的值。如果没指定,则将ValueStack栈顶的值赋给新变量。
  4. var: 可选,指定该元素的引用ID,如果指定了将会将该值放在ValueStack中!

set标签用于生成一个新变量,并把该变量放置到指定的范围内,这样就允许直接使用JSP表达式语言来访问这些变量,也可以通过struts2标签来访问!

eg:

<!--使用param标签为JavaBean实例传入参数-->

<s:bean name="lee.Person" id="p">

    <s:param name="name" value="'yeeku'"/>

    <s:param name="age" value="29"/>

</s:bean>

将Stack Context中的p值放入默认范围内。<br>

<s:set value="#p" name="xxx"/>

<s:property value="#xxx.name"/> <br>

将Stack Context中的p值放入application范围内<br>

<s:set value="#p" name="xxx" scope="application"/>

<s:property value="#attr.xxx.name"/> <br>

将Stack Context中的p值放入session范围内<br>

<s:set value="#p" name="xxx" scope="session"/>

<!--使用JSP2.0表达式语言直接访问session中的属性-->

${sessionScope.xxx.name}<br>


取出集合中的值赋给<set标签

<s:iterator id="dmsDocumentinfo" value="#request.dmsDocumentinfos">

              //从集合中取值赋给set声明的变量

<s:set name="str" value="#dmsDocumentinfo.documentDesc"></s:set>


//在页面显示set标签的值

<s:property value="#str" />

</s:iterator>

struct2笔记之<s:set />的使用

,, "> , =true'>
  • earbao
  • earbao
  • 2014年06月11日 09:32
  • 3625

s:set标签的用法

1、  s:set标签 格式:s:set name="" value="" scope=””/> 说明:把jsp页面中的一个值,以name存储起来。Scope存储的范围是在applic...
  • fangqun663775
  • fangqun663775
  • 2016年04月26日 09:14
  • 2958

在Struts的jsp中使用<s: set> 和 Jstl的<c: set>

或者 --------------------------------------------------------------------------------------------...
  • Raynaing
  • Raynaing
  • 2016年04月02日 16:36
  • 631

struts2 s标签 s:set 和 s:if

set标签是将某个值放到指定范围内, 比如说 student.teacher.parent.age 每次访问这个属性不仅性能低,而且代码可读性很差,为了解决这个问题,可以将这个值设置为一个新值,并且放...
  • cuker919
  • cuker919
  • 2010年01月12日 14:01
  • 10453

Struts2标签的<s:set>标签与JSTL的<c:set>标签

set标签 用于将某个值放入指定范围内。例如application、session范围等。 当某个值所在的对象图深度非常深时,例如如下:person.worker.wife.parent.age...
  • y_dzaichirou
  • y_dzaichirou
  • 2016年12月22日 13:30
  • 190

<s:set> <s:if>

1、  s:set标签 格式:s:set name="" value="" scope=””/> 说明:把jsp页面中的一个值,以name存储起来。Scope存储的范围是在applicatio...
  • liufeng_king
  • liufeng_king
  • 2012年01月13日 10:55
  • 8029

schedule

moved to http://www.cnblogs.com/yaoyansi/archive/2010/09/30/1839017.html How GPUs WorkAo option http...
  • yaoyansi
  • yaoyansi
  • 2009年09月28日 19:17
  • 7187

<s:set>标签中value使用表达式变量的问题

【话题】标签中value使用表达式变量的问题 2009-07-12 18:21:26 来自:yyqqjyl 浏览数:212次 HTML code Condition...
  • pianistOfSoftware
  • pianistOfSoftware
  • 2016年07月13日 15:37
  • 1736

set -x与set +x指令

set -x与set +x指令 上传者:huahuafdy      我也要“分享赚钱” 2014/6/19 关注(210) 评论(0...
  • fz2543122681
  • fz2543122681
  • 2014年11月06日 13:08
  • 2659
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Struts2标签的<s:set标签的用法
举报原因:
原因补充:

(最多只允许输入30个字)