分享

EL表达式和Ognl表达式,取数据的区别

 且看且珍惜 2014-05-12

EL表达式和Ognl表达式,取数据的区别

11.1、一般的EL表达式:${}查询变量的顺序为:

1,当前域,即作用域

2,page  , request , session  , application(从小到大,没有返回null

 ${}可以写在jsp页面的任何位置,包括字符串中

 

11.2、使用了Struts2后,在JSP中写的EL表达式(${})查询变量的顺序为:

1,作用域  ,当前域

2,值栈,ValueStack

3,ActionContext中的map集合  :

包括: request , session , application ,parameters ,attr集合,还

有ActionContext本身的集合 。这里面的查询顺序我就不知道

 

                ${}可以在jsp中,也可以在 xml 文件 中(如在struts.xml文件里)

 

11.3、Strut2中,jsp,ognl表达式必须使用 #key 来取数据,

且必须指定根对象,如 #session [‘age’],表示到ActionContext持有的Session域中取数据

不加#号,默认是到值栈中去取。

如:<s:property  value=”name” >,意思是: #valuestack.name

可详细参考Struts2笔记中的ognl表达式

Ognl表达式遇到字符串,需要使用 %{} 转义

 

11.4、Ognl表达式取的数据都在ActionContext这个map集合中去

Ognl表达式必须使用#key来取数据。这个#就表示ActionContext这个map集合

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多