Object Graphics Navigation Language(对象图导航语言)
OGNL是一种表达式语言技术,封装在ognl.jar开发包中.
可以很方便的对对象的属性进行获取和设置.
1)什么是EL,有什么用
属于表达式语言,可以访pageContext,request,session,application存储范围的数据.可以简化JSP程序.
2)OGNL表达式,有什么用
属于表达式语言,需要ognl.jar提供支持.可以完成以下操作
a.可以访问对象属性(获取和设置)
基本类型属性:"id","name"
数组类型属性:"love[0]","love[1]"
List类型属性:"city[0]","city[1]"
Map类型属性:"books.key","books['key']"
b.可以访问对象的方法
"city.size()","name.toUpperCase()"
c.可以访问静态常量和方法
"@java.lang.Math@PI"
d.可以访问集合中的数据,进行集合过滤等操作
"persons.{?#this.age>20}" : 返回persons集合中,满足age>20的所有元素.
?指的是返回所有满足条件的元素
^指的是返回第一满足条件的元素
$指的是最后一个满足条件的元素
e.支持Java中的运算符和表达式
"\"name\"+name","id+10"
f.定义一个List和Map类型的常量
List常量:"{1,2,3}"
Map常量:"#{'age':20,'name':\"tom\"}"
3)OGNL标准结构
OGNL有3个重要组成部分,一个OGNL引擎,一个是root对象,另一个是context对象.
访问context区域需要使用"#key"格式.
没有"#",例如"name",意思是访问root对象的name属性
分享到:
相关推荐
struts2 中 OGNL表达式的使用struts2 中 OGNL表达式的使用
在Struts2中,OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于数据绑定和表示层的数据交换。这篇博客文章可能详细探讨了如何在Struts2中使用OGNL来传递和操作数据。 OGNL是Struts2的核心...
在Struts2中,OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,用于获取和设置对象的属性。这篇博客将深入探讨OGNL表达式的理解和用法。 OGNL的全称是对象图导航语言,它的主要功能是在对象模型...
在“struts2-OGNL表达式测试”中,你可能会看到各种OGNL表达式的使用示例,比如访问和修改对象属性、动态调用方法、处理集合和执行条件判断等。通过这些测试,你可以更好地理解和掌握OGNL在实际开发中的运用,确保在...
本文将深入探讨如何在Struts2中有效地使用OGNL表达式。 首先,OGNL是Struts2的核心组成部分,它允许开发者在Action类和JSP页面之间灵活地传递和访问数据。在Action类中,你可以设置属性,然后在JSP页面上通过OGNL...
Struts2 是一个流行的Java Web框架,它广泛使用OGNL(Object-Graph Navigation Language)作为其默认的表达式语言。OGNL 提供了一种强大的方式来访问和操作Java对象的属性,使得在视图层的表示更加简洁和高效。本文...
- Struts2提供了一些内置的状态变量,这些变量可以直接在OGNL表达式中使用。 - 示例代码: ```xml ()"/> ``` 6. **Lambda表达式** - Lambda表达式提供了一种简洁的方式来定义简单的函数或方法。 - 示例代码...
在Struts2框架中,OGNL表达式被广泛应用于视图层,比如在JSP页面中用来获取数据。OGNL表达式的语法简洁明了,例如: - **直接调用方法**:`xxx.sayHello()`。 - **访问静态方法和常量**:`@java.lang.String@format...
在提供的压缩包文件"Struts2_1900_OGNL"中,可能包含了一些关于Struts2 OGNL表达式使用和安全性的示例代码、教程文档或是漏洞分析。通过研究这些内容,你可以更深入地理解和掌握Struts2框架中OGNL表达式的运用,以及...
Struts2 OGNL表达式是Java Web开发中一个重要的概念,它是一种强大的对象图形导航语言(Object-Graph Navigation Language)。在Struts2框架中,OGNL被广泛用于视图层,作为数据绑定的主要手段,使得开发者能够方便...
Struts2是一个流行的Java web开发框架,其核心特性之一就是使用OGNL(Object-Graph Navigation Language)作为表达式语言,并提供了丰富的标签库来简化视图层的开发。本篇文章将详细探讨Struts2中的OGNL表达式语言...
本案例提供ognl使用详解,测试通过,只需解压放入自己WEB项目中,执行struts_ognl包内java文件即可(未提供jia包,若需要可以联系留言发至邮箱),若测试不好可以联系本人提供指导. Struts 2默认的表达式语言是OGNL...
下面是OGNL表达式的使用方法: 访问基本属性 1. 访问值栈中action的普通属性: 2. 访问值栈中对象的普通属性: 3. 访问值栈中对象(对象包含对象)的普通属性: 4. 访问值栈中对象的普通方法:().length()"/> 5. ...
### OGNL表达式在Struts中的应用解析 #### 一、OGNL表达式简介 OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,主要用于获取和设置Java对象的属性,尤其适用于处理复杂的对象图。它最初由...
其中,OGNL(Object-Graph Navigation Language)是Struts2中的核心表达式语言,用于数据绑定和表示层的数据操作。这篇深入学习的文章主要探讨了OGNL表达式的原理和使用。 首先,我们来理解一下OGNL是什么。OGNL是...
本文将深入探讨OGNL的基本用法、标签的使用以及其在Struts2中的实际应用。 1. **OGNL基本概念** - OGNL是一种表达式语言,用于获取和设置对象属性。它支持点号和索引访问、方法调用、运算符、集合操作等。 - 例如...
2. **方法调用**:可以使用OGNL调用对象的方法,如`list.add("item")`。 3. **集合操作**:支持对集合进行操作,如`list[0]`访问列表的第一个元素,`map["key"]`访问映射中的值。 4. **运算符支持**:包括算术运算...
- **框架集成**:许多 Java 框架,如 Struts2、Hibernate Validator 等,都集成了 OGNL 表达式用于数据绑定和验证。 - **模板引擎**:在模板引擎中使用 OGNL 表达式来动态渲染页面。 - **业务逻辑处理**:在复杂的...
在Struts2中,OGNL表达式的使用大大提升了代码的可读性和维护性。 首先,`#`字符在OGNL中扮演着关键角色。它主要用于访问OGNL上下文和Action上下文。`#`前缀可以用来获取`ActionContext`,这包含了四个重要的域:...
Struts2 框架中,OGNL(Object-Graph Navigation Language)是一种强大的表达式语言,主要用于在 Struts2 应用程序中进行数据绑定和投影。OGNL 表达式可以用于过滤、投影和排序数据。 在 Struts2 中,OGNL 表达式...