Tapestry(二):Tapestry基本知识

Tapestry是“基于组件”的表现层框架之一。
Tapestry(二):Tapestry基本知识_第1张图片
Tapestry组件用于表现HTML响应,以及响应HTTP请求。Tapestry组件通过其规范定义。规范是一个XML文档,其中定义了组件类型,参数,组件模板,包含的组件以及被包含组件之间的联系,还原所有的assets。
在运行的时候,规范指定并实例一个类,当页面所包含的组件被表现的时候,组件将访问HTML模板,找到静态的HTML并植入组件。
1) 工作原理
Tapestry组件扮演着控制器Controller的角色,是模式层(Model)中pure-domain objects和包含有组件的HTML模板的媒介。
页面通过配置一系列属性表达式(Property expressions)连接模式层和表现层。属性表达式使用另外一种开源框架OGNL(Object Graph Navigation Language)读取和跟新对象的Java Bean属性。
Domain objects是中间层对象,是应用层,在整个应用程序中,它们是全局对象,将数据保存到数据库,或者实现特殊业务。(对象储存什么信息,怎样将不同的对象关联在一起,以及怎样读取数据,将数据存储到数据库)
servlet作为控制器,收到请求。定位并更新domain objects,读取或更新数据。控制器servlet选择一个表现层(JSP)表现响应。并最终响应页面发送到客户端。
2)页面结构
一个页面(page)由一个HTML模块,一个页面规范(page specification),和一个JAVA页面类(page class)构成。
3)属性指定机制(specified properties)
在代码中,定义抽象方法用来读取和更新属性,只需定义即将使用的方法。Tapestry自己会生成一个子类来实现,只需在页面规范中指明类型即可。

你可能感兴趣的:(tapestry)