转载请注明:http://blog.csdn.net/uniquewonderq
1.什么是OGNL?
Object Graph Navigation Lauguage ,是一门功能强大的表达式语言,类似与EL。
2.为什么使用OGNL?
OGNL表达式功能强大,struts2默认采用OGNL表达式访问Action的数据,实际上是通过ValueStack对象来访问的Action。
OGNL是独立的开源组件
3.struts2显示标签
struts2中,OGNL表达式要结合struts2标签来访问数据。
struts2的显示标签
<s:property value="OGNL"/>
4.两个常用的OGNL表达式:
1.访问基本属性
<s:property value="属性名">
2.访问实体对象
<s:property value="对象名.属性名">
5.六个需要了解的OGNL表达式
1.访问数组/集合
2.访问map
3.运算
4.调用方法
5.创建集合
6.创建Map
6.什么是VauleStack
ValueStack是struts2中,Action向页面传递数据的媒介。ValueStack封装了Action的数据,并允许JSP通过OGNL来对其进行访问。
7.ValueStack原理
8.EL表达式如何访问ValueStack
struts2将数据封装与ValueStack,默认使用OGNL取值。
struts2也支持使用EL表达式取值,那么EL是从哪里取的值呢,如何取的值呢?
---实际上,EL也是从ValueStack中取的值。
---EL默认的取值范围是page,request,session,application
---struts2重写了request的getAttribute方法,先试图从原始request中取值,如果没取到再在ValueStack中取值
9.六大核心组件的关系