webwork的表达式语言实际上是一种脚本语言
webwork的表达式语言EL是OGNL(object graph navigation language)
OGNL语言的特殊处:
1.'a'是字符常量;'hello world'和"hello world"是字符串常量;"a"是字符串常量
所以<ww:property value="\"a\""/>和<ww:peoperty value="'a'"/>是不同的一个是字符串常量一个是字符常量
2.OGNL支持访问静态属性及静态方法:类名必须使用完整的包名进行引用。例如:@examples.chap8.Muppt@OG_MUPPT
@examples.chap8.Muppt@getOgMuppt()
也可以借助于值栈进行访问(不推荐使用)。例如:
@vs@OG_MUPPT
@vs@getOgMuppt()
3.OGNL中的#号的作用有:引用ActionContext中的值;动态构建map;对集合进行筛选和投影操作
#parameter.id表示引用ActionContext中的值;#{1:'one',2:'two'}表示动态构建map;集合的筛选和投影分别为
Collection.{? expression}和Collection.{expression}。#号可以如此进行使用collection.{?#this.age<=2}