OGNL表达式注意事项
访问Bean的属性
>>Bean的类型必须遵循JavaBean规范
>>必须具有无参构造
>>setter/getter方法复合JavaBean规范
反问集合对象
>>可以使用属性名[index]的方式访问
>>列表、数组
>>可以使用属性名[key]的方式访问
>>Map对象
——————————————————————————————————
常用OGNL操作
定义列表
{value1,value2,value3,...,valueN}
示例: <s:set name="list" value="{'jason','tom','jack'}"/>
访问列表
<s:property value="#list[0]"/>
<s:property value="#list.size"/>
<s:set>标签将一个值赋给指定范围的变量
<s:property>标签用于输出指定对象的属性值
_____________________________________________________
定义数组
new int[]{1,2,3,4}
new double[4]
访问数组
对象名[0]
对象名.length
_______________________________________________________
定义Map
#{key1:value1,key2:value2,key3:value3,...,keyN:valueN}
<s:set name="map" value="#{'cn':'China','us':'the United States','fr':'France'}"/>
访问Map(map为对象名)
#map["cn"]
#map.cn
————————————————————————————————————————————
Struts 2标签的属性类型
对象类型:属性值作为OGNL表达式进行计算
例如:<s:set name="myurl" value="http://www.xxx.com"/>
<s:property value="#myurl" /> //显示 http://www.xxx.com
字符串类型:属性值将直接输出,应使用%{......}再次计算。
例如:<s:set name="myurl" value="'http://www.xxx.com'"/>
<s:url value="#myurl"/> //显示 #myurl
<s:url value="%{#myurl}"/> //显示 http://www.xxx.com
URL标签
<s:url value="url/>
<s:param name ="parname" value="parvalue"/>
</s:rul>
value属性:表示指定生成URL的地址
<s:param/>表示需要传递的参数信息
>>name属性:表示传递的参数名称
>>value属性:表示传递参数所具有的值
日期标签
<s:date format="format" nice="true|false" name="name" id="id"> ......</s:date>
format属性:指定格式进行日期格式化
nice属性:改属性只有true和false两个值,用于指定是否输出指定日期与当前时间的时差,默认false
name属性:表示当前需要格式化的日期
id属性:表示引用该元素的Id值