struts中#、%和$这三个符号的使用方法

转载 2012年03月28日 13:09:46

一、"#"的用法
   1、 访问OGNL上下文和Action上下文,#相当于ActionContext.getContext();下表有几个ActionContext中有用的属性:
        parameters 包含当前HTTP请求参数的Map #parameters.id[0]作用相当于request.getParameter("id")
       request 包含当前HttpServletRequest的属性(attribute)的Map #request.userName相当于request.getAttribute("userName")
       session 包含当前HttpSession的属性(attribute)的Map #session.userName相当于session.getAttribute("userName")
       application 包含当前应用的ServletContext的属性(attribute)的Map #application.userName相当于application.getAttribute("userName")
       attr 用于按request > session > application顺序访问其属性(attribute) #attr.userName相当于按顺序在以上三个范围(scope)内读取userName属性,直到找到为止
     2、用于过滤和投影(projecting)集合,如books.{?#this.price<100};
     3、构造Map,如#{'foo1':'bar1', 'foo2':'bar2'}。
二、"%"的用法
    “%”符号的用途是在标志的属性为字符串类型时,计算OGNL表达式的值。例如在Ognl.jsp中加入以下代码:
    <h3>%的用途</h3>
    <p><s:url value="#foobar['foo1']" /></p>
    <p><s:url value="%{#foobar['foo1']}" /></p>
三、"$"的用法
    1、用于在国际化资源文件中,引用OGNL表达式
    2、在Struts 2配置文件中,引用OGNL表达式
     例如:
         <action name="AddPhoto" class="addPhoto">
            <interceptor-ref name="fileUploadStack" />           
            <result type="redirect">ListPhotos.action?       albumId=${albumId}</result>
        </action>

其中${}也在jstl使用,例如:<c:if test="${obj1.id==obj2.id}">

相关文章推荐

为什么SpringAOP使用JDK动态代理时好像没有代理Object.[equals()、hashCode()、toString()]这三个方法

//这是JDK动态代理过程中要代理的4个方法 private static Method m1; private static Method m3; private static Method ...

struts2_ognl表达式符号的使用方法

ognl表达式中,#号%号和$符号的使用方法。

符号数据的一些使用方法

  • 2014年01月05日 20:34
  • 520B
  • 下载

【SSH三大框架】Hibernate基础第十三篇:lazy、constrained、fetch三个属性的作用和使用方法

lazy、constrained、fetch三个属性的作用和使用方法

AsyncHttpClient, RequestParams ,AsyncHttpResponseHandler三个类使用方法

1. AsyncHttpClient, RequestParams ,AsyncHttpResponseHandler三个类使用方法 (1)AsyncHttpClient public class...

Pyhton 单行、多行注释符号使用方法及规范

Original url: http://www.iplaypython.com/jichu/note.html python 中的注释有多种,有单行注释,多行注释,批量注释,中文注释也是常用的...
  • junmuzi
  • junmuzi
  • 2016年06月15日 15:19
  • 26304

Pyhton 单行、多行注释符号使用方法及规范

python中的注释有多种,有单行注释,多行注释,批量注释,中文注释也是常用的。python注释也有自己的规范,在文章中会介绍到。注释可以起到一个备注的作用,团队合作的时候,个人编写的代码经常会被多人...
  • Blaider
  • Blaider
  • 2016年03月04日 10:53
  • 3242

ELF格式文件符号表全解析及readelf命令使用方法

ELF格式文件符号表全解析及readelf命令使用方法

Matlab中下标,斜体,符号及希腊字母的使用方法

reference: http://wenku.baidu.com/view/bf031b92daef5ef7ba0d3cf4.html Example Code: x = [0: 10/120...
  • sonictl
  • sonictl
  • 2013年04月26日 03:31
  • 1347
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:struts中#、%和$这三个符号的使用方法
举报原因:
原因补充:

(最多只允许输入30个字)