文件名称:OGNL表达式语言.txt
文件大小:9KB
文件格式:TXT
更新时间:2023-04-30 04:44:06
ognl
OGNL表达式语言: 相对EL表达式,它提供了平时我们需要的一些功能,如: ? 支持对象的方法调用 ,如 xxx.sayHello(); ? 支持类静态方法调用和值的访问,表达式的格式为@[类全名]@[方法名|值名],例如:@java.lang.String@format(‘foo %s’,’bar’) ? 操作集合对象。 Ognl有一个上下文(Context)的概念,其实就是一个Map结构,它实现了java.utils.Map接口,Struts2中的上下文的实现为ActionContext。 结构图: 当Struts2接受一个请求时,会迅速创建ActionContext,ValueStack,action。然后把action放进ValueStack,所以action的实例变量可以被OGNL访问。 访问上下文中的对象需要使用#符号标注命名空间,如#application、#session 另外OGNL会设定一个根对象(root对象),在Struts2中根对象是ValueStack。 如果访问根对象中的对象的属性,则可以省略#命名空间。