• 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

  • 相关阅读:
    孩子们的游戏(圆圈中最后剩下的数)
    求1+2+3+...+n
    扑克牌顺子
    Java 好文整理
    翻转单词顺序列
    左旋转字符串
    和为S的两个数字
    和为S的连续正数序列
    平衡二叉树
    java 构造函数
  • 原文地址:https://www.cnblogs.com/callyblog/p/7535869.html
Copyright © 2020-2023  润新知