java学习笔记之-OGNL和Struts2标签

struts2标签的优势:标签库简化了用户对标签的使用;结合OGNL使用,对于集合,对象的访问功能非常强大提供可扩展的主题,末班支持,极大地简化

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:返回当前循环的各种信息

  1. count:集合含有多少个对象
  2. index:返回当前循环的这一项的索引
  3. even:当前循环到的对象是不是处于列表的偶数索引位置
  4. odd:当前便利到的对象是不是处于列表的技术索引的位置

OGNL简介

你使用过的OGNL

页面获取并输出Action属性

<s:property value=”userName”/> 页面中获取request保存的数据

<s:property value=”#request.loginAccess”/>

OGNL是什么

  • Object Graph Navigation Language,对象图导航语言

  • 是Struts2默认的表达式语言,开源,功能强大

  1. 存取对象的属性,调用对象的方法:访问静态方法和属性

  2. 访问值栈以及Stack Context

  3. 操作集合对象

  4. 支持赋值,运算操作,字段类型转化等

OGNL访问值栈

通过<s:property value=”house.title”/>为什么可以获取到房屋的标题信息’

house为Action的属性,Action的实例放在值栈(value Stack)中

OGNL可以直接访问值栈中的值

值栈(value Stack)

  • 存放数据的内存空间

  • 值栈中存放了Action的实例

    例如:可以通过OGNL来访问Action实例中的属性值

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/9923.html

(0)
上一篇 2023年 4月 22日 下午11:54
下一篇 2023年 4月 22日 下午11:54

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信