• OGNL表达式


    OGNL表达式标签中的值有三种:

    1.直接是OGNL表达式。

    2.字符串需转义自OGNL表达式。

    1)OGNL表达式转换为字符串显示,需要用''(单引号)引起来。

    2)转为OGNL表达式的字符串,需要加%{字符串}来转换

    3.只能是字符串。

    标签:

    一、数据标签

    1.property -- 显示数据

    value -- 要显示的内容,放OGNL表达式 如果要显示字符串,需要用''引起来。

    escape -- true/false    默认是true, 改为false显示html效果标签

    default 默认值,放字符串,不是放OGNL

    <s:property value="'<h1>HAHA<h1>'" escape="false" default="[这是默认值]"/>

    2.set -- 设置一个新变量,赋值

    var -- 新变量名

    scope --范围 page/request/session/application

    value --变量值,OGNL表达式,字符串要加单引号

    <s:set var="ah" value="newsList" scope="request"></s:set>
    <s:property value="#request.ah"/>

    3.url -- 生成网址

    var -- 变量名

    value--要生成的URL地址,字符串可转义自OGNL,要手动写出完整的地址。

    action -- 要生成的URL地址,字符串可转义自OGNL,生成出绝对路径。一般用这个

    <s:url var="uu" action="News_getAll"></s:url>
    <s:property value="#uu"/>

    4.bean -- JavaBean的实现类

    name -- 要实例化的Java类

    var -- 变量名

    5.param -- 生成参数

    name -- 标签名

    value -- OGNL表达式,加单引号

    <s:bean name="com.itnba.maya.domel.News" var="bbb">
        <s:param name="biaoti" value="'这是自定义的标题'"></s:param>
    </s:bean>
    <s:property value="#bbb.biaoti"/>

    <s:url var="uu" action="News_getAll">
        <s:param name="ids" value="'k001'"></s:param>
    </s:url>
    <s:property value="#uu"/>

    6.date -- 格式化输出日期
    name -- 要格式化的日期值 --- OGNL表达式
    format --- 格式化显示的格式。

    <s:date name="date" format="yyyy年MM月dd日" var="mydate"/>
    <s:property value="mydate"/>

    二、控制标签

    1.if...else if ...else
    test -- 表格式 OGNL

    2.iterator
    var
    value --OGNL
    status :even,odd,first,last,index,count
    begin
    end
    step

    <s:iterator var="aa" value="newsList" status="st">
    <s:if test="#st.even">
    <div style="background-color:#666666;">
    </s:if>
    
    <s:else>
    <div>
    </s:else>
    <s:property value="#st.index+1"/>.
    <s:property value="#aa.biaoti"/>
    </div>
    </s:iterator>

    3.append/merge/subset

    var--新的对象名
    <param> 子元素

    <s:set value="{'aa','bb','cc'}" var="aa"></s:set>
    <s:set value="{'11','22','33'}" var="bb"></s:set>
    <s:append var="all">
        <s:param name="one" value="#aa"></s:param>
        <s:param name="two" value="#bb"></s:param>
    </s:append>

    <s:set value="{'aa','bb','cc'}" var="aa"></s:set>
    <s:set value="{'11','22','33'}" var="bb"></s:set>
    <s:merge var="all">
        <s:param name="one" value="#aa"></s:param>
        <s:param name="two" value="#bb"></s:param>
    </s:merge>
    <s:iterator value="#all"  var="t">
    <s:property value="#t"/><br>
    </s:iterator>


    4.generater
    seperator--分隔符
    val--被分隔的字符串
    var -- 分隔成的数组名

    <s:generator val="'a,b,c,d'" separator="," var="s"></s:generator>
    <s:iterator value="#s" var="t">
    <s:property value="#t"/><br>
    </s:iterator>


    5.sorted
    source --- 集合
    comparator -- 对比器对象

    <s:set value="{'aaaa','bb','ccc','dddd'}" var="arr"></s:set>
    <s:bean name="com.itnba.maya.domel.Duibiqi" var="duibiqi"></s:bean>
    <s:sort comparator="duibiqi" var="sss" source="#arr" >
        <s:iterator var="str">
            <s:property value="#str"/><br>
        </s:iterator>
    </s:sort>
    <s:property value="#arr.size()"/>

    还需要建一个类,实现Comparator接口。用来做对比器

    package com.itnba.maya.domel;
    
    import java.util.Comparator;
    
    public class Duibiqi implements Comparator<String>{ 
    
        @Override
        public int compare(String o1, String o2) {
            if(o1.length() > o2.length()){
                return -1;
            }
            else if(o1.length() == o2.length()){
                return 0;
            }
            else{
                return 1;
            }
        }
    
    }

  • 相关阅读:
    PAIRING WORKFLOW MANAGER 1.0 WITH SHAREPOINT 2013
    Education resources from Microsoft
    upgrade to sql server 2012
    ULSViewer sharepoint 2013 log viewer
    Top 10 Most Valuable Microsoft SharePoint 2010 Books
    讨论 Setsockopt选项
    使用 Alchemy 技术编译 C 语言程序为 Flex 可调用的 SWC
    Nagle's algorithm
    Nagle算法 TCP_NODELAY和TCP_CORK
    Design issues Sending small data segments over TCP with Winsock
  • 原文地址:https://www.cnblogs.com/hq233/p/6576749.html
Copyright © 2020-2023  润新知