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
  • 3234

<c:set与<s:set用法区分

                                      、

struts2 s标签 s:set 和 s:if

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

Struts2 在页面定义变量 s:set标签

网上很多关于S:set标签的用法,例如:   最近在项目开发中,需要一个把一个List中的id,循环输出到一个js里面。测试了半天,得到如下代码。 (假设test这个list中有个ID字...

s:set标签的用法

1、  s:set标签 格式:s:set name="" value="" scope=””/> 说明:把jsp页面中的一个值,以name存储起来。Scope存储的范围是在applic...

Struts2中s标签的用法

A: -----超链接,类似于html里的 -----执行一个view里面的一个action -----如果action的errors有值那么显示出来 -----如果actio...

javascript用window.open的子窗口关闭自己并且刷新父窗口

在字窗口的关闭触发事件,采用以下函数:  function closeMeAndReloadParent(){opener.location.reload();window.close();}注:这是...

菜鸟学习Struts——Scope属性

一、概念。     在Action映射配置中,Scope属性可以取值为:request或session。Scope属性表示:Struts框架在将     ActionForm对象(与目标Action...
  • gwblue
  • gwblue
  • 2014年03月11日 21:13
  • 4634

struts2标签的迭代用法(<s:interator>)的简单用法

struts2标签的迭代用法()的简单用法

struts2中s:iterator 标签的使用详解 及 OGNL用法 (转载)

简单的demo:s:iterator 标签有3个属性:value:被迭代的集合id   :指定集合里面的元素的id status 迭代元素的索引1:jsp页面定义元素写法 数组或list  A  ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Struts2标签的<s:set标签的用法
举报原因:
原因补充:

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