struts2标签的优势:
-
标签库简化了用户对标签的使用;
-
结合OGNL使用,对于集合,对象的访问功能非常强大
-
提供可扩展的主题,末班支持,极大地简化了视图页面的编写
-
不依赖任何表现层技术
Struts2标签的分类:
通过标签(Generic Tags)
-
数据标签(Data Tags)
-
控制标签(Control Tags)
UI标签(UI Tags)
Ajax标签(Ajax Tags)
数据标签:
<s:property>:输出指定值
-
value:用来获取值的OGNL表达式
-
default:value属性返回控制室,如果仍然希望输出某些内容,可使用default来制定这些内容
-
escprHtml:是否转义HTML,默认取值true
<s:debug>:查看值栈以及Stack Context中所有能访问的值
控制标签:
<s:if>/<s:elseif>/<s:else>表达分支判断
-
test:表示是否符合调减,本身是一个OGNL表达式,运算结果为一个boolean值
<s:iterator>用来处理循环,循环遍历集合对象
-
value:用来指明到底循环的是谁,这个属性的值是一个OGNL表达式
-
var:变量名称,用来引用循环的对象
-
status:返回当前循环的各种信息
-
count:集合含有多少个对象
-
index:返回当前循环的这一项的索引
-
even:当前循环到的对象是不是处于列表的偶数索引位置
-
odd:当前便利到的对象是不是处于列表的技术索引的位置
OGNL简介
你使用过的OGNL
页面获取并输出Action属性
<s:property value=”userName”/> 页面中获取request保存的数据
<s:property value=”#request.loginAccess”/>
OGNL是什么
-
Object Graph Navigation Language,对象图导航语言
-
是Struts2默认的表达式语言,开源,功能强大
-
存取对象的属性,调用对象的方法:访问静态方法和属性
-
访问值栈以及Stack Context
-
操作集合对象
-
支持赋值,运算操作,字段类型转化等
OGNL访问值栈
通过<s:property value=”house.title”/>为什么可以获取到房屋的标题信息’
house为Action的属性,Action的实例放在值栈(value Stack)中
OGNL可以直接访问值栈中的值
值栈(value Stack)
-
存放数据的内存空间
-
值栈中存放了Action的实例
例如:可以通过OGNL来访问Action实例中的属性值
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/9923.html