码迷,mamicode.com
首页 > 编程语言 > 详细

OGNL的全称是对象图导航语言

时间:2018-05-11 15:32:12      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:讲解   语法   ring   一个   expr   foo   计算   disco   静态方法   

OGNL的全称是对象图导航语言( object-graph Navigation Language),它是一种功能强大的开源表达式语言,使用这种表达式语言,可以通过某种表达式语法,存取Java对象的任意属性,调用Java对象的方法,同时能够自动实现必要的类型转换。如果把表达式看作是一个带有语义的字符串,那么OGNL无疑成为了这个语义字符串与Java对象之间沟通的桥梁。

1.2 OGNL的作用  

Struts2默认的表达式语言就是OGNL,它具有以下特点:
  ● 支持对象方法调用。例如: objName. methodName( )。
  ● 支持类静态方法调用和值访问,表达式的格式为@[类全名(包括包路径)]@[ 方法名|值名 ]。例如:@ java.lang.String@format("foo%s","bar")。
  ● 支持赋值操作和表达式串联,例如: price=100, discount=0.8, calculatePrice( ),在方法中进行乘法计算会返回80

  ● 访问OGNL上下文( OGNL context)和 ActionContext。
  ● 操作集合对象。

1.3 OGNL的要素

了解了什么是OGNL及其特点后,接下来,分析一下OGNL的结构。OGNL的操作实际上就是围绕着OGNL结构的三个要素而进行的,分别是表达式( Expression)、根对象( Root Object)、上下文环境( Context),下面分别讲解这三个要素,具体如下。

OGNL的全称是对象图导航语言

标签:讲解   语法   ring   一个   expr   foo   计算   disco   静态方法   

原文地址:https://www.cnblogs.com/fghgng/p/9024634.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!