一、ONGL符号说明
#用途:
1.用于访问ONGL中Context中非根对象.
2.用于集合操作的投影和选择.
3.构建map对象.#{"key1":"value1","key2":"map2"..}
4. 其他使用场景:#books[1]、 #foo["key"]
%用于用途:
1.计算ognl表达式,将普通字符串转换为ognl表达式进行计算:
$主要用途:
1.在struts的配置文件srtruts.xml中引用数据:
<action name="login" class="com.sz.login" method="login">
<result name="success">index.jsp?username=${username}&password=${password}</result>
</action>
${username}、${password}表达式用于从ValueStack元素里获取响应属性值,访问过loginAction后,login就被放到vs的顶端,而vs又是OgnlContext的roo,所有就可以直接访问。
2.在struts的校验文件中,或国际化资源文件中
<field name="price">
<validator type="int">
<param name="min">50</param>
<param name="max">500</param>
<message>the price must between ${min} and ${max}</message>
</validator>
</field>
二、strutsOgnl功能点:
1.支持字段访问
2.支持方法调用(包括静态方法调用)
3.支持数组、集合、map等对象数据的访问
4.支持投影、选择操作
5.支持lambda表达式 :[....],定义一个函数,并通过,调用该函数