Struts2框架标签库

Struts2框架标签库要与OGNL表达式组合使用!!!
值栈是Struts特有的,用来控制数据的流入流出,是由Struts创建的一块块内存区域,用来存放数据,每创建一个Action实例,就会创建一个值栈,Action类中的属性值会与相对应的值栈同步,即action类的属性就是值栈内存放的数据,前端取值时,是从值栈中取值.

  1. <s:<s:property value="name"/>取值,name为放在值栈中的值,取存放在actioncontext中的值时需要在name前加#

  2. <s:select list="u" listKey="uid" listValue="user" headerKey="0" headerValue="--请选择--" value="uid" ></s:select>
    在前端页面遍历集合,并将集合中的某个值循环遍历放入下拉框选项中,
    其中
    list属性为Struts值栈中的list集合或map集合
    listKey相当于<option>标签中的value值,当遍历map集合时写关键字key,
    listValue相当于<option>标签中填写的html内容当遍历map集合时写关键字value,
    headerKey相当于头提示文字的key值,headerValue是头提示文字
    value是选择默认选中项,uid为后台值栈中的要选择的集合原本的listKey

  3. <s:set name="age" value="20" scope="request"> </s:set>:用来临时设置key-value值,尽量设置scope属性,
    值可选择:page,request,session,application,分别表示设的值的有效范围
    当赋的值为字符串时,需要在" "内加' '以与数值区别

    <s:set name="age" value="20" scope="request"> </s:set>
    <s:property value="#request.age"/>
    <s:set name="name" value="'tom'" scope="request"> </s:set>
    <s:property value="#request.name"/>
    
  4. <s:bean id="us" name="entity.User" var="us">用来创建一个对象,name属性的值为类的路径名,id和var为取对象时用到的值,当使用var时,id取不到

   <s:bean id="ua" name="entity.User" var="us">
     <s:param name="uid" value="100001"></s:param>
  </s:bean>
  
  <s:property value="#us.uid"/><br>
<!--    下面的取不到 -->
  <s:property value="#ua.uid"/>
  1. `` <s:if test=“user.name==‘aaa’”></s:if><s:else> </s:else>,条件控制语句
    <s:bean  name="entity.User" var="us">
      <s:param name="name" value="'tom'"></s:param>
   </s:bean>
    <s:if test="#us.name=='tom'">
    hello tom!
  </s:if>
  <s:else>
     hello
  </s:else>
  1. <s:iterator value="u" status="s"></s:iterator>循环迭代,功能类似于<c:foreach>标签,但是使用因为ognl表达式缘故,比<c:foreach>方便
    <s:iterator value="list" status="s">标签中value的属性值为要遍历的ognl表达式指向listmap集合对象,
    status属性值表示行的信息,有以下可选:选择时要在前加#
    在这里插入图片描述
    <s:property value="user"/>标签中list集合时的value属性值表示对象的属性,
    map集合时写keyvalue关键字,表示取map中的keyvalue
    遍历简单集合如List<String> s时,只写 <s:property />标签,不写value属性
 <s:iterator value="list" status="s">
 <s:property value="user"/>,<s:property value="#s.count"/>
 </s:iterator>
  1. <s:date name="mydate" format="yyyy-MM-dd"></s:date>可将后台传来的Date类型的值格式化,
    其中name表示后台存放于值栈中的Date类型的值,format表示要格式化为何种类型
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值