zoukankan      html  css  js  c++  java
  • struts-OGNL

    特点  常用来访问值栈里对象属性的一种语言

        通常由struts标签来解析执行  <%@ taglib prefix="s" uri="/struts-tags"%>

    值栈  特点  ValueStack

            栈的特点:后入先出

        内容  对象栈  存放action的实例及相关对象

            Map栈  存放封装web资源的Map对象  application,session,request,parameter

                                attr  通用属性,按照request,session,application的顺序查找属性值

                 实际上是ActionCont的引用

        API  通过 ActionContext 对象的 getValueStack() 获取值栈对象

          方法  push(Object)  把对象压入对象栈的顶部

              pop()  移除对象栈的顶部对象(类似删除)  

              peek()  得到对象栈顶部的对象(类似get)  

    访问方式

      struts标签  <s:property value=""/>  只输出<s:property/>会输出栈顶的对象

             访问对象栈  <s:property value="属性名"/>  按先后顺序匹配属性名,只输出找到的第一个

                    可定义起始位置  value="[索引]['属性名']"  (索引值从0开始)

                            value="[索引].属性名"

             访问Map栈  <s:property value="#作用域.key"/>  如果作用域=attr,按照request,session,application的顺序查找属性值

             访问对象的方法  value=“[起始索引].方法名(参数列表)”  实例方法

             访问类的静态方法和属性  value=“@全类名@方法名(参数列表)”  

                          value=“@全类名@静态属性名(参数列表)”  静态方法和属性,默认不允许访问,要在struts里打开

                          打开的语句<constant name="struts.ogrl.allowStaticMethodAccess" value="true"></constant> 

             访问对象的集合属性  输出集合内容  value=“[起始索引].集合属性名”

                        访问集合单元  数组和List  value=“[起始索引].集合属性名[索引]”

                                Map  value=“[起始索引].集合属性名[‘key’]”

                        获取集合长度  数组  value=“[起始索引].集合属性名.lenght”

                                List和Map  value=“[起始索引].集合属性名.size”

                        判断内容是否为空  value=“[起始索引].集合属性名.isEmpty”

      使用EL  访问对象栈  ${属性名}  按先后顺序匹配属性名,只输出找到的第一个,不能定义查找的起始位置

            访问Map栈  ${作用域.属性名}  

  • 相关阅读:
    加沙地带
    特拉维夫以色列第二大城市,滨临东地中海,以色列最为国际化的经济中心
    1980年,以色列国会立法确定耶路撒冷是该国“永远的与不可分割的首都”。而巴勒斯坦自治政府也宣布耶路撒冷将是未来巴勒斯坦国的首都。在21世纪,耶路撒冷仍然是巴以冲突的中心。
    delete
    NUnit -- Test discovery or execution might not work for this project
    HearthBuddy中_settings.txt的更详细参数解释
    WPF global exception handler
    sftp winscp
    cdn and fallback
    What happens in an async method
  • 原文地址:https://www.cnblogs.com/jingfengling/p/6078381.html
Copyright © 2011-2022 走看看