您的位置:首页 > 编程语言 > Java开发

Struts2的OGNL

2012-12-07 17:08 106 查看
-------------Struts2的OGNL--------------------

既然要访问数据,就必须有个东西装数据

OGNL的装数据的东西叫ONGL Context或者Stack Context

------其实就是可以为一个MAP。

它里面的每个对象都应该有个名字,根据名字来访问。

#对象名

对象:

1.application

2.session

3.ValueStack(root)

4.request

5.parameters

6.arr(依次搜索page、request、session、application)

如果OGNL Context中有三个对象:foo、bar、test

#bar.abc -访问bar对象的getAbc()返回值

#test.xyz.abc.def -访问test对象的getXyz().getAbc().getDef()

OGNL COntext中有个根对象,访问时可以省略到对象名

如果OGNL Context中有三个对象:foo、bar、test但bar是根对象

bar.abc -访问bar对象的getAbc()返回值

OGNL可以直接创建list对象{a1、a2、a3、a4.......}

OGNL可以直接创建MAP对象#{key1:value1,key2:value2,key3,value3.....}

OGNL还可以直接获取子集合

person.cats.{? #this.age>2} ---获取person所有的猫中age大于2

person.cats.{^ #this.age>2} ---获取person猫中age大于2的一个只

person.cats.{$ #this.age>2} ---获取person猫中age大于2的最后一只

OGNL还支持直接调用静态成员

----前提是需要将sturts.ognl.allowStaticMethodAccess常量设置true才可以的

类名@静态Field

类名@静态方法(参数值)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: