Struts用到的表达式

一、JSP表达式(JSP页面都可使用)

属于JSTLjava标准标签库中的使用方式,格式为<%=key%>

如<%=name%>

二、EL表达式(JSP页面都可使用)

EL表达式语言不是一种编程语言,格式为${key}

如:${first.name}

三、OGNL(Struts2特有)

Struts2应用中,视图页面可以直接访问Action属性值,当Action属性不是简单值(基本类型值或String类型值)时,而是某个对象、数组或集合时,就需要用OGNL表达式语言;另外访问Sturts的非跟对象也需要用到OGNL表达式语言,格式为 #key.a

在Struts2标签属性中经常会出现"#"或者"%{}"的符号出现?

OGNL上下文中有且仅有一个根对象。Struts2为我们定义了许多明明对象,他们分别是"ValueStack","Parameters","Session","Request", "Appliction","Attr",其中"ValueStack"被设置为上下文的根对象。访问非根对象必须加上"#"号,这就是出现"#"的原因。

Struts2中的标的处理类,并不是所有都将标签的属性作为OGNL表达式来看待,有时候我们需要设置动态地值,则必须告诉标签的处理类该字符串按照OGNL表达式来处理,%{}符号的作用就是告诉标签的处理类将它包含的字符串按照OGNL表达式处理。 "$"符号用于XML文件中用于获取动态值,与%{}作用类似。


你可能感兴趣的:(Struts用到的表达式)