OGNL

Posted 黄小鱼ZZZ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OGNL相关的知识,希望对你有一定的参考价值。

OGNL

       OGNL是一种可以方便地操作对象属性的开源表达式语言,目的就是避免在JSP页面中出现过多的<%...%>语句,提供更清晰的视图层实现。
      OGNL(Object-Graph Navigation Language,对象导航语言)是一种功能强大的表达式(
Expression Language,EL)。通过OGNL,可以使用简单一致的表达式语法存取对象的任意属性、调用对象的方法、遍历整个对象元素和实现字段类型转换等功能。
        struts2默认的表达式语言就是OGNL,相对于其他的表达式语言,具有以下的优势:
      1)OGNL是将视图元素同模型对象绑定在一起的一种语言。使用OGNL的类型转换功能,会使类型转换变得更加简单。
      2)支持对象方法调用。
      3)支持类静态方法调用和值访问。
      4)支持赋值操作和表达式串联。
      5)可以方便的访问OGNL上下文和ActionContext。
      6)可以方便的操作集合对象。 
      OGNL通常会结合struts2标签一起使用。在应用中会经常遇到关于“#”、“%”、“$”的使用问题。
      “#”:1)访问OGNL上下文和Action上下文,相当于ActionContext.getContext().
               2)用于过滤和投影集合。
               3)用于构造Map。
       “%”:该符号的用途是当标签的属性为字符串类型时,计算OGNL表达式的值。
        “$”: 在国际化资源文件中使用OGNL表达式。
               在struts2配置文件中使用OGNL表达式

以上是关于OGNL的主要内容,如果未能解决你的问题,请参考以下文章