..首页..站长介绍..手绘作品..生活日记..过客留言..友情链拉..我的照片..
Category
 生活点滴
Infomation
共有日志:166
评论:15
注册观员:90
Search
首页-->工作学习

Turbine项目介绍
--------------------------------------------------------------------------------------------------

Turbine是一个以servlet为基础的Web Application Framework,是一个开发Web Application的工具,致力于解决一些在软件开发中重复出现的问题。这个Framework使有经验的Java开发者快速建立安全的Web Application成为可能。当然,Turbine的某些部分也可以作为独立的组件被用在其他的非Web应用中。

一个MVC架构的Web应用系统被称作Model 2。Sun公司创建了这个词,来描述使用Controller Servlet管理View与后端Model交互的J2EE应用系统。
使用Turbine开发应用系统应遵循Model 2架构。在MVC设计模式中,Model代表了业务逻辑和业务数据;View代表了用户接口;Controller处理业务流,管理Model和View。应用这个架构的好处是把业务逻辑处理和业务数据的表现分离开,使我们系统的代码更容易维护。例如:当用户界面发生变化后,应用系统业务逻辑代码不必重新经过编译,就能够和新的用户界面一起很好的工作。

Turbine是以Servlet作为基础的框架,支持多种表现层技术。Jsp未能很好的遵循MVC范例,使有些应用系统把逻辑层也混合在Jsp中,所以另外一种表现层技术¾Velocity¾-受到很多Turbine使用者关注。在任何情况下,MVC框架要求不把业务逻辑嵌入表现层。
Turbine的使用方式之一是作为MVC架构的控制器。在Turbine中,控制器的核心是Turbine Servlet 和 Action Event Handles。Turbine Servlet直接和客户接口交互,是所用用户请求的入口和用户响应的出口,管理着系统的业务流程、View和后端的Model。Action代表了对业务数据进行何种处理,Action Handle是针对不同Action所做出的处理。
Turbine能够和EJB集成在一起,把EJB作为Web Application的业务处理层,这样Turbine将成为EJB系统的客户端。我们需要做的是创建新的Turbine Service访问EJB系统。当然,Turbine也可以不使用EJB,把Turbine提供的Action、Screen或服务作为业务处理的场所。

Turbine有三种使用方式:作为MVC架构的中心控制器 ;作为被其他应用使用的组件;作为Object-Relational 工具。根据实际需要,我们可以选择其中一种使用方式。Turbine能够在开发中起到重要作用,是因为到目前为止它已经提供了200多个类。这些类能够被分成六个大的部分:
1.org.apache.turbine.modules 系统的所有模块类存放在这个包路径下,在它的下面又可以划分为五个小的子包:Page、Action、Screen、Layout、Navigation。这些子包代表了五个不同的模块。
2.org.apache.turbine.om OM代表的是Object Module,Turbine使用的所有的对象模型保存在这个包路径下。这些对象模型代表现实世界中的一些实体,例如权限系统中的用户、组、角色、权限等。
3.org.apache.turbine.services 系统所有的服务类保存在这个包路径下。Turbine为使用者提供了丰富的服务类,是turbine的核心组成部分之一。例如数据库连接池服务、日志服务、文件上传服务、XML-RPC服务等。
4.org.apache.turbine.torque Torque是一个被Turbine使用的操纵数据库的工具,支持各种开放原码和关系型的数据库,实现一个Object-Relational系统。我们用XML文件定义数据库表,然后使用Torque自动生成所有的数据库表和相对应的Java对象。Torque能够被Turbine使用,也能作为一个独立的组件被其他需要使用数据库的系统使用。
5.org.apache.turbine.util 这个路径下面保存了Turbine使用的一些辅助代码。例如Upload 服务使用的FileHandler、FileItem、MultipartStream等被保存在这个包路径的Upload子包中。
6.Org.apache.turbine Turbine Servlet保存在这里,它是Turbine的一个核心。当Turbine被当作控制器使用时,Turbine Servlet是所有请求的唯一入口和所有响应的唯一出口。

作者:Jurich
工作单位:航天四创软件技术有限公司
相关经历:本人从事Jetspeed为基础的门户产品开发和门户应用开发已经有1年多的时间,熟悉J2EE技术体系,熟悉门户开发技术。欢迎有相关项目的组织或个人在技术方面经常交流。
联系方式:zhuhuangfeng@aerostrong.com.cn