`
yuanyao
  • 浏览: 148307 次
  • 性别: Icon_minigender_1
  • 来自: 就那小山沟
社区版块
存档分类
最新评论

OGNL学习(一)

阅读更多

OGNL即对象导航图语言,是表达式语言的一种。通常用来绑定JAVA对象的属性,用一个表达式就可以读取和设置对应JAVA对象的属性,可以用来沟通WEB组件和业务逻辑的模型部分。

OGNL的常量声明:
1.字符串常量的声明:
即可以使用单引号,而且还可以使用双引号,拥有JAVA语言的全部转意字符
2.字符常量的声明:
和JAVA语言一样,使用单引号,同样可以使用全部的转意字符
3.数值常量的声明:
除了float,long,int,double之外,OGNL准许声明一个以"b"或"B"结尾的大整数 (BigDecimals),OGNL还准许用"h"或"H"做后缀声明一个超大整数.
4.布尔常量的声明:
True | false
5. NULL

OGNL的方法调用:
OGNL是在运行时调用方法的,这使得它无法做强制的类型检查,OGNL会去检索一个和它方法的各个参数最接近的一个方法进行使用,如果有多个方法满足这个条件,那么OGNL将任意调用其中的一个.(NULL和所有原始类型匹配,所以最有可能返回一个出乎意料的调用).
OGNL也支持new object()的方法,产生一个新的对象,但是除了在java.lang包里的对象外,必须指明对象所在包的全名.
OGNL支持直接调用类的静态方法.@class@method(args)
Java.util.Date d = new Java.util.Date();
Int day = d.getDay();
@abs(-12.345);
@Java.lang.Math@floor(3.25);
@Java.lang.Math@Sqrt(4);
如果省略类名,OGNL默认类为Java.lang.Math


OGNL操作集合
1操作列表Lists
OGNL中
Person in {"chinese", "japanese", '"Amercian"}
2 操作映射
OGNL中
#{"foo" : "foovalue", "bar" : "barvalue"}
3 操作数组
OGNL中
int[] a = new int[]{2, 3, 5, 7};
int b = a[0];
int bend = a[3];
int bhead = a[1];

 

分享到:
评论

相关推荐

    OGNL学习笔记,包含struts2中ognl的各种用法

    OGNL(Object-Graph Navigation Language)是Struts2框架中常用的一种表达式语言,用于在视图层方便地访问和操作模型数据。...通过学习和熟练掌握OGNL,开发者可以提高工作效率,构建更加灵活和可维护的Web应用程序。

    学习OGNL在Struts2中工作原理

    ### 学习OGNL在Struts2中的工作原理 #### OGNL简介 OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取和设置Java对象的属性。它是Struts2框架的一个核心特性之一,被广泛应用于框架的...

    ognl源码和ognl帮助文档.rar

    OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,常用于Java应用,特别是Struts2框架中,用于数据绑定和动态方法调用。在这个压缩包中,包含的是OGNL的源码和帮助文档,这对于深入理解OGNL的工作...

    OGNL语言中文资料

    OGNL,全称为Object-Graph Navigation Language,是一种强大的表达式语言,主要被用于获取和设置Java对象的属性。它在Java开发中广泛应用于Spring框架、Struts2等,提供了简洁而灵活的方式来访问和操作对象的属性。...

    ognl-2.6.11.jar 官方源码

    总而言之,ognl-2.6.11.jar的源码提供了深入了解OGNL这一强大表达式语言的机会,对于Java开发者尤其是框架开发者而言,研究源码能帮助他们更好地利用OGNL,提升代码的灵活性和可维护性。通过不断学习和实践,开发者...

    ognl2.6.11 源代码

    OGNL (Object-Graph Navigation Language) 是一个强大的表达式语言,用于获取和设置 Java 对象的属性。在Java开发中,尤其是Spring MVC等框架中,OGNL被广泛应用于视图层表达式,允许开发者通过简洁的语法来访问和...

    ognl源码及API

    学习和熟练掌握这些API将使你在使用ognl进行数据绑定和动态逻辑时更加得心应手。 总之,这个压缩包中的ognl源码和API文档是一份宝贵的资源,对于想要深入理解ognl工作原理或者需要优化使用ognl的开发者来说,它们将...

    ognl的jar包

    描述中的“ognl-3.0.6-sources的jar包”是指特定版本(3.0.6)的OGNL源代码打包成的JAR文件,开发者可以下载这个文件来查看或学习OGNL的内部实现。 OGNL的核心功能包括: 1. **对象导航**:通过点号(.)操作符,...

    OGNL表达式的使用及文档

    OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取和设置Java对象的属性。它被广泛应用于Spring框架和其他许多Java应用中,用于数据绑定和表达式评估。本篇将详细介绍OGNL的使用方法及其...

    ognl源码

    OGNL源码的学习主要包括以下几个核心概念: 1. **表达式解析**:OGNL的解析器将用户输入的表达式如`obj.property`转化为内部表示,这个过程涉及词法分析和语法分析。词法分析将输入字符串分解为一个个符号,语法...

    struts2中的OGNL的源码

    通过深入学习OGNL的源码,开发者可以更好地定制和优化Struts2应用,提升性能,增强安全性,并能解决遇到的特定问题。这是一项值得投入时间和精力的任务,特别是对于那些希望在Web开发领域有深入理解的人来说。

    ognl.jar(ognl-2.6.11.jar)

    在Eclipse中,你可以将“ognl.jar”作为外部库添加到你的项目中,并通过“Attach Source”功能关联源代码,这样就可以查看和调试OGNL的内部实现,这对于学习、调试或扩展其功能非常有帮助。 OGNL的核心功能包括: ...

    ognl源码.rar

    总结,OGNL作为Java生态系统中的一个重要组成部分,其源码研究可以帮助开发者更高效地利用这一工具,同时加深对Java反射、动态类型和表达式语言设计的理解。通过深入学习,开发者可以更好地解决实际问题,提升开发...

    OGNL源代码以及个人笔记

    OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取和设置Java对象的属性。它是开源的,被广泛应用于各种Java应用框架,如Struts2和Spring MVC,用于在视图层进行数据绑定。这个压缩包包含...

    Struts2深入学习----OGNL表达式原理

    这篇深入学习的文章主要探讨了OGNL表达式的原理和使用。 首先,我们来理解一下OGNL是什么。OGNL是一种强大的表达式语言,允许开发者通过简单的字符串表达式来访问和修改对象图。在Struts2中,OGNL用于在Action和...

    ognl jar包源码

    **ognl jar包源码详解** ...总的来说,研究ognl.jar的源码对于任何想要深入了解Struts2框架以及Java表达式语言的人来说都是一次宝贵的学习经历。通过这种方式,我们可以提升编程技能,更好地应对实际开发中的挑战。

    ognl项目文件和源代码

    OGNL (Object-Graph Navigation Language) 是一个强大的表达式语言,主要用于在Java应用程序中获取和设置对象属性。它在Java社区中被广泛使用,尤其是在Struts2框架中,作为视图和模型之间的数据绑定工具。这个...

    ognl2.7.3源代码

    OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取和设置Java对象的属性。在Java世界中,它被广泛用于框架如Struts2,用于数据绑定和动态方法调用。这里的"ognl2.7.3源代码"指的是OGNL库的...

    OGNL(jar包)源代码(OGNL表达式实现代码)

    通过对OGNL源代码的学习,开发者可以更好地理解其内部机制,从而更有效地利用它来处理数据绑定和表达式计算。同时,源代码也可以作为参考,帮助开发者自定义OGNL的行为,或者构建类似的表达式解析库。 总之,OGNL...

Global site tag (gtag.js) - Google Analytics