网站大量收购独家精品文档,联系QQ:2885784924

《Tapestry入门.pptVIP

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Tapestry 入门 --Tapestry3.0.4版 Tapestry:概述 Tapestry是一个开源的基于servlet的应用程序框架,它使用组件对象模型来创建动态的,交互的web应用。 一个组件就是任意一个带有jwcid属性的html标记。其中jwc的意思是Java Web Component。 Tapestry使得java代码与html完全分离,利用这个框架开发大型应用变得轻而易举。并且开发的应用很容易维护和升级。Tapestry支持本地化,其错误报告也很详细。Tapestry主要利用javabean和xml技术进行开发。 Tapestry:概述 在Tapestry框架中: 页面有HTML模板(.html),页面规范(.page)和页面类(.java)组成; 组件由HTML模板(.html)[可选],组件规范(.jwc)和组件类(.java)组成。 页面的HTML模板和组件的HTML模板都是在原始的HTML静态页面中嵌入少量的jwcid属性标签构成 页面类和组件类都是抽象或非抽象的Java类,并最终继承于Tapestry的org..apache.tapestry.AbstractComponent类。 页面对于Tapestry来说,是一种特殊的组件。 一个使用Tapestry框架的Web应用程序,实际上就是一堆Tapestry组件的集合。 先看一个例子吧 继续后面的内容 JavaBeans 及其属性 Tapestry框架中大量的使用了JavaBeans及其属性 JavaBeans对属性的访问有get方法和set方法 public type getName() {….} public void setName(type value) {…} public boolean isName() {…} 属性路径 在Tapestry框架中扩展了一个概念“属性路径” 属性路径 是指一系列的用句号分割的属性名称 比如visit.userName 用java代码表示: getVisit().getUserName() OGNL Object-Graph Navigation Language 它是一种功能强大的表达式语言(Expression Language,简称为EL),通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能。它使用相同的表达式去存取对象的属性。 组件:概述 组件 每个组件都要有一个关于参数集的规范 每个参数都要有名字、类型、传输类型、是否必输项等等 传输类型(direction),可以的取值有:in/form/custom 添加jwcid属性,将组件放入HTML模板中 any jwcid=component id ... body /any any jwcid=component id ... / 组件可以有自己的模板,可以包含其他的组件 组件:正式/不正式 参数 Tapestry中的参数有两种类型 正式参数 不正式参数 例子:TextField 组件:限制性组件 两个特殊的组件 $remove$ $content$ 页面类:概述 页面类是一种特殊的组件 所有的页面类必须是BasePage(org.apache.tapestry.html.BasePage)的子类 相同点: 有自己的规范文件 可以包含有其他的组件 有自己的模板 不同点 没有参数! 页面类:页面状态 页面状态分为三种 瞬时在页面表现之前,属性被设定,并且在当前请求结束的时候,重置为默认值。 动态属性的值根据页面的表现而改变,但是在当前请求结束的时候,被重置 持久在各个请求周期之间,属性被记录并持久化。当属性被重载的时候,持久化页面属性被恢复。 页面类:持久化 声明Tapestry属性持久化的工作由开发人员来完成,属性的值必须被序列化(非原始类型通过实现serializable接口来实现)。 Session持久化 :当页面被第一次访问的时候,页面属性的值被储存到HttpSession对象中,当页面需要操作页面属性的时候,从HttpSession中获取页面属性的值,当session会话的生命周期结束,页面属性的值即被清空 页面类:几个特殊的页面类 Home 程序开始页面,必须由开发者提供 Exception 用来显示没有被捕捉的异常信息 可以覆盖 StaleSession session失效页面 页面抛出StaleSessionException异常,才显示 可以覆盖 StaleLink 连接失效页面 页面抛出StaleLinkException异常,才显示 可以覆盖 创建组件 在Tapestry中创建一个新的组件十分简单! 创建组件:选择父类 T

文档评论(0)

maxianhui + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档