一、OGNL表达式语言
1、对象图导航语言
与EL的功能是相同的,主要用于在struts的标签上呈现作用域中的数据!
注意:struts2的标签是不支持el表达式语言的!!!
2、OGNL访问不同作用域中数据的语法
(1)request获取数据
#request.对象.属性
(2)session获取数据
#session.对象.属性
(3)application获取数据
#application.对象.属性
(4)valueStack(值栈)获取数据
#对象.属性
(5)从请求参数中获取数据
#parameters.参数---等同于request.getParameter("参数");
(6)自动所有作用与属性取值
#attr.属性名
3、使用struts2提供的set标签设置List或者Map集合的数据
(1)设置List集合数据的语法
<s:set name="变量名" value="{值1,...,值n}" [scope="作用域"]/>
设置Map集合的语法
<s:set name="变量名"
value="#{'键1':值1,...,'键n':值n}" [scope="作用域"]/>
(2)迭代标签
<s:iterator value="作用域中的集合或者数组"
var="变量(集合对象的元素)">
${变量}....
</s:iterator>
4、条件标签
<s:if test="条件表达式">
....
</s:if>
<s:else>
.....
</s:else>
5、迭代标签的条件过滤
<s:iterator value="集合.{?#this.属性==值}" var="集合元素对象">
.....
</s:iterator>
注意:?--表示符合条件的所有集合元素
^--表示符合条件的第一个集合元素
$--表示符合条件的最后一个集合元素
二、struts常用的表单标签
1、文本框
<s:textfield name="xxx" [value="xxx"] [cssStyle="xxx"]
[cssClass="xxx"]/>
2、单选按钮
<s:radio name="xxx"
list="#{'键':'值','键':'值'}"
listKey="key"
listValue="value"
[value="选定的键"] />
3、下拉列表框
<s:select name="xxx"
list="集合属性"
[listKey="集合元素的属性1"]
[listValue="集合元素的属性2"]
[value="选定的值"]/>
4、复选框标签
<s:checkboxlist name="xxx"
list="集合属性"
[listKey="集合元素的属性1"]
[listValue="集合元素的属性2"]
[value="选定的值"]/>
/>
5、文本域
<s:textArea name="xxx" cols="列数" rows="行数"></s:textArea>
6、格式化日期属性的标签
1、对象图导航语言
与EL的功能是相同的,主要用于在struts的标签上呈现作用域中的数据!
注意:struts2的标签是不支持el表达式语言的!!!
2、OGNL访问不同作用域中数据的语法
(1)request获取数据
#request.对象.属性
(2)session获取数据
#session.对象.属性
(3)application获取数据
#application.对象.属性
(4)valueStack(值栈)获取数据
#对象.属性
(5)从请求参数中获取数据
#parameters.参数---等同于request.getParameter("参数");
(6)自动所有作用与属性取值
#attr.属性名
3、使用struts2提供的set标签设置List或者Map集合的数据
(1)设置List集合数据的语法
<s:set name="变量名" value="{值1,...,值n}" [scope="作用域"]/>
设置Map集合的语法
<s:set name="变量名"
value="#{'键1':值1,...,'键n':值n}" [scope="作用域"]/>
(2)迭代标签
<s:iterator value="作用域中的集合或者数组"
var="变量(集合对象的元素)">
${变量}....
</s:iterator>
4、条件标签
<s:if test="条件表达式">
....
</s:if>
<s:else>
.....
</s:else>
5、迭代标签的条件过滤
<s:iterator value="集合.{?#this.属性==值}" var="集合元素对象">
.....
</s:iterator>
注意:?--表示符合条件的所有集合元素
^--表示符合条件的第一个集合元素
$--表示符合条件的最后一个集合元素
二、struts常用的表单标签
1、文本框
<s:textfield name="xxx" [value="xxx"] [cssStyle="xxx"]
[cssClass="xxx"]/>
2、单选按钮
<s:radio name="xxx"
list="#{'键':'值','键':'值'}"
listKey="key"
listValue="value"
[value="选定的键"] />
3、下拉列表框
<s:select name="xxx"
list="集合属性"
[listKey="集合元素的属性1"]
[listValue="集合元素的属性2"]
[value="选定的值"]/>
4、复选框标签
<s:checkboxlist name="xxx"
list="集合属性"
[listKey="集合元素的属性1"]
[listValue="集合元素的属性2"]
[value="选定的值"]/>
/>
5、文本域
<s:textArea name="xxx" cols="列数" rows="行数"></s:textArea>
6、格式化日期属性的标签