zoukankan      html  css  js  c++  java
  • Struts2 标签

    1.<s:property value=""/>

       输出value中的值,在没有value属性的情况下,该标签输出的是对象栈的栈顶的值

    2. <s:set value="" var="" scope="" />

    var变量

      1.value先取出存在request中的值

      2.
        a.如果scope没有写,var的值将作为key出现在valuestack的map中
        b.如果scope的作用域为request,则var的值将出现在request中

    3.<s:push value=""/>

    利用这个标签可以把value中的值放入到对象栈栈顶,但是这个标签一结束,栈顶移除

    4.<s:bean />

    通过s:bean标签,就把person对象放入到了栈顶
    当s:bean标签结束了以后,栈顶的值就移除

    如果没有var属性
    s:bean标签会把person对象放入栈顶
    如果s:bean标签结束以后,栈顶的person对象会被移除
    如果有var属性
    s:bean标签会把person对象放入到栈顶
    如果s:bean标签结束以后,栈顶的person对象将会移除
    在valuestack的map中会存放key值为var属性的值,value为person对象

    5.<s:iterator />

      a.对象集合为外在变量,不是action中的属性

      将对象集合放入对象栈中

      top表示栈顶
      s:iterator如果没有value属性,则默认输出对象栈顶的值
       s:iterator如果有value属性,并且value属性的值为top,则输出的也是对象栈顶的值
       当s:iterator第一次循环的时候,会把list中的第一个元素放入到栈顶,如果循环完第一个元素
      则会把第一个元素移除栈顶,list中的第二个元素将到达栈顶。这样循环,直到iterator迭代完毕。

      

      b.如果对象集合是action中的属性

      

      因为在后台,list被作为action的属性存放了,因为是TagAction的属性,而TagAction的是存放在对象栈中的
      存放在对象栈中。在这里,s:iterator的value属性的值就是为了找到list.


      当s:iterator第一次循环的时候,会把list中的第一个元素放入到栈顶,如果循环完第一个元素
      则会把第一个元素移除栈顶,list中的第二个元素将到达栈顶。这样循环,直到iterator迭代完毕。

      如果后台通过put方法,把list放入到了map中,s:iterator中的value可以这样写:list,
      也可以这样写:#list

  • 相关阅读:
    【数量技术宅|量化投资策略系列分享】股指期货IF分钟波动率统计策略
    【数量技术宅 | Python爬虫系列分享】实时监控股市重大公告的Python爬虫
    0-1背包问题
    活动选择的贪心算法与动态规划
    图的邻接表、拓扑排序、无权最短路径和加权最短路径
    把二叉树转变为左孩子右兄弟树
    基于接缝裁剪的图像压缩 算法导论
    公司聚会
    二叉堆部分练习
    编辑距离问题
  • 原文地址:https://www.cnblogs.com/callyblog/p/7535869.html
Copyright © 2011-2022 走看看