zoukankan      html  css  js  c++  java
  • 【Struts2复习知识点二十】 标签

    一.property标签

    View Code
    <!-- 输出username元素 -->
    <li>property: <s:property value="username"/> </li>
    <!-- 输出字符串'username' -->
    <li>property 取值为字符串: <s:property value="'username'"/> </li>
    <!-- 找不到admin就赋值默认值 -->
    <li>property 设定默认值: <s:property value="admin" default="管理员"/> </li>
    <!-- escape设置是否将标签以文本形式输出 -->
    <li>property 设定HTML: <s:property value="'<hr/>'" escape="false"/> </li>


    二.set标签

    View Code
    <li>set 设定adminName值(默认为request 和 ActionContext): <s:set var="adminName" value="username" /></li>

    <li>set 从request取值: <s:property value="#request.adminName" /></li>
    <li>set 从ActionContext取值: <s:property value="#adminName" /></li>

    <%--<li>set 设定范围: <s:set name="adminPassword" value="password" scope="page"/></li>
    <li>set 从相应范围取值: <%=pageContext.getAttribute("adminPassword") %></li>
    --%>
    <li>set 设定var,范围为ActionContext: <s:set var="adminPassword" value="password" scope="session"/></li>
    <li>set 使用#取值: <s:property value="#adminPassword"/> </li>
    <li>set 从相应范围取值: <s:property value="#session.adminPassword"/> </li>

    上述例子为先设置值,再从中取值。主要是查看<s:debug>

    三.bean标签

    View Code
    <li>bean 定义bean,并使用param来设定新的属性值:
    <s:bean name="com.bjsxt.struts2.tags.Dog" >
    <s:param name="name" value="'pp'"></s:param>
    <s:property value="name"/>

    </s:bean>


    </li>

    <li>bean 查看debug情况:
    <s:bean name="com.bjsxt.struts2.tags.Dog" var="myDog">
    <s:param name="name" value="'oudy'"></s:param>
    </s:bean>
    拿出值:
    <s:property value="#myDog.name"/>

    </li>

    include标签

    View Code
    <li>include _include1.html 包含静态英文文件
    <s:include value="/_include1.html"></s:include>
    </li>

    <li>include _include2.html 包含静态中文文件
    <s:include value="/_include2.html"></s:include>
    </li>

    <li>include _include1.html 包含静态英文文件,说明%用法
    <s:set var="incPage" value="%{'/_include1.html'}" />
    <s:include value="%{#incPage}"></s:include>
    </li>

    %是说把{}中的内容当成OGNL表达式。

    $ # %的区别

    a)         $用于i18n和struts配置文件

    b)         #取得ActionContext的值

    c)         %将原本的文本属性解析为ognl,对于本来就是ognl的属性不起作用

     

    if标签

    View Code
    <li>if elseif else: 
    age = <s:property value="#parameters.age[0]" /> <br />
    <s:set var="age" value="#parameters.age[0]" />
    <s:if test="#age < 0">wrong age!</s:if>
    <s:elseif test="#parameters.age[0] < 20">too young!</s:elseif>
    <s:else>yeah!</s:else><br />

    <s:if test="#parameters.aaa == null">null</s:if>
    </li>

    itreator标签

    View Code
    <li>遍历集合:<br />
    <s:iterator value="{1, 2, 3}" >
    <s:property/> |
    </s:iterator>
    </li>
    <li>自定义变量:<br />
    <s:iterator value="{'aaa', 'bbb', 'ccc'}" var="x">
    <!-- 调用字符串转大写方法 -->
    <s:property value="#x.toUpperCase()"/> |
    </s:iterator>
    </li>
    <li>使用status:<br />
    <!-- 定义状态 -->
    <s:iterator value="{'aaa', 'bbb', 'ccc'}" status="status">
    <!-- 循环取出元素 -->
    <s:property/> |
    遍历过的元素总数:<s:property value="#status.count"/> |
    遍历过的元素索引:<s:property value="#status.index"/> |
    当前是偶数?:<s:property value="#status.even"/> |
    当前是奇数?:<s:property value="#status.odd"/> |
    是第一个元素吗?:<s:property value="#status.first"/> |
    是最后一个元素吗?:<s:property value="#status.last"/>
    <br />
    </s:iterator>

    </li>

    <li>
    <!-- 遍历map,定义map的时候需要加# -->
    <s:iterator value="#{1:'a', 2:'b', 3:'c'}" >
    <s:property value="key"/> | <s:property value="value"/> <br />
    </s:iterator>
    </li>

    <li>
    <s:iterator value="#{1:'a', 2:'b', 3:'c'}" var="x">
    <s:property value="#x.key"/> | <s:property value="#x.value"/> <br />
    </s:iterator>
    </li>





     

  • 相关阅读:
    [个人]工作中的死亡陷阱
    [阮一峰]在软件开发中,一旦这些技术被取代,你的知识将变得毫无价值,因为它们大部分都是实施的细节。
    [原文 + 补充] 当你在浏览器中输入Google.com并且按下回车之后发生了什么?
    安全的知识点总结
    purge旧的ubuntu 的linux内核
    【个人】运维常识
    windows数字证书管理器
    在mobaxterm内连接deb使用lrzsz进行文件传输
    网络安全常见考试题
    linux deb系 rpm系 配置路由
  • 原文地址:https://www.cnblogs.com/surge/p/2365273.html
Copyright © 2011-2022 走看看