OGNL

OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言(Expression Language,简称为EL),通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。

OGNL是一个独立的模块,跟struts没有直接的关系,只不过是struts使用了OGNL而已

使用OGNL需要2个jar包

1.ognl-3.0.jar

2.javassist-3.7.ga.jar

 

 

OgnlContext(上下文对象),存在唯一一个叫做根的对象(root),可以通过程序设定上下文当中的哪个对象作为根对象。

OGNL_第1张图片OGNL_第2张图片

 

OGNL_第3张图片

 

OGNL_第4张图片

实际上是调用root对象属性为name的值value,然后调用value.toUpperCase().length()

 

 

 

OGNL_第5张图片

 

OGNL_第6张图片

OGNL_第7张图片

1.

 OGNL_第8张图片

2

OGNL_第9张图片

 

 3.

OGNL_第10张图片

 

4

print:

 

获取具体的某个值,需要指定key

print:

value3

 

5

OGNL_第11张图片OGNL_第12张图片

 

print:

 

print:

 

返回一个元素,但结果还是集合,如果想获取其属性值,需要[0].name

 

 

6

 

10

返回集合persons的每个person的name属性的值

 

条件表达式

你可能感兴趣的:(EL,Ognl)