Turbine模块详述

<script type="text/javascript"> google_ad_client = "pub-8800625213955058"; /* 336x280, 创建于 07-11-21 */ google_ad_slot = "0989131976"; google_ad_width = 336; google_ad_height = 280; // </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> Turbine有五个模块组成:Page、Action、Layout、Navigation、Screen,每一个模块服务于特定的目的,它们是执行用户的请求和生成所需页面的真正场所。 从对象封装的角度看,Page对象包含Layout对象,Layout对象又包含Navigation对象和Screen对象。实际上,这种封装关系非常符合网页页面的结构特征。以下是对每个模块的介绍: 1.Page模块:Page模块是产生页内容的一系列事件链中的第一个模块,包括了其他Action、Layout、Screen、Navigation模块。在执行中,Page对象首先检查它是否有Action需要执行。有Action,执行Action。之后,Page向Screen对象请求它的Layout,并执行Layout,最终返回Html页面的内容。 2.Action模块:Action代表用户想怎样处理请求。例如,用户提交一个Html表单,表单的一个Hidden字段将保存用户想怎样处理表单数据的Action信息,系统能够根据Action的信息判断是把表单的数据保存到数据库,或是验证数据的有效性,或是其他的处理。Action有利于把用户对数据的不同处理划分为不同的可重用的模块,有利于把用户请求的处理从Turbine Servlet中分离出来,也有利于Turbine和EJB的集成,因为Action能够仅仅简单的调用EJB中的逻辑处理。Page负责执行Action。 3.Layout模块:这个模块定义了Web Page实际的物理布局。在Turbine中,网页被定义为Screen和Navigation这两个部分,如图2所示。Layout执行Screen完成构建网页的Body部分,执行Navigation完成构建网页的其余部分。 4.Screen模块:这个模块代表了网页的Body。Layout执行这个模块,产生一个网页的主体Html。 5.Navigation模块:这个模块代表网页的Header和Footer。Layout执行这个模块,产生网页主体之外的Html。 Page,Action,Layout,Screen,Navigation都被定义为抽象类,使用时需要有实现类。Turbine为这些抽象类提供了缺省实现,例如:DefaultAction就是Action抽象类的缺省实现。我们可以根据自己的需要,创建自己的抽象类实现,修改TurbineResources.properties文件中的配置,替换抽象类的缺省实现。 Turbine为每一个模块提供了专门的装载器,装载器负责动态地装载每一个模块。因为装载器继承了HashTable的特性,所以它能缓存模块,提高装载模块的速度。装载器采用了Factory设计模式,因此在TurbineResource.property文件中定义”Loader.Classpath”属性之后,装载器根据这个属性值,在指定的路径下找到正确的文件,装载并创建合适的类实例。 装载类是静态类,整个系统中只存在一个类实例,不需要在TurbineResources.properties文件中注册。所有的静态类都不需要注册。 作者:Jurich 工作单位:航天四创软件技术有限公司 相关经历:本人从事Jetspeed为基础的门户产品开发和门户应用开发已经有1年多的时间,熟悉J2EE技术体系,熟悉门户开发技术。欢迎有相关项目的组织或个人在技术方面经常交流。 联系方式:zhuhuangfeng@aerostrong.com.cn
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值