您所在的位置: 首页 > 操作系统 > 开源技术 >

不可不知:企业级开源软件大盘点(3)

  • 摘要:由于开源软件特殊的开发方式,使得这个领域真可谓百花齐放,以至于究竟有多少种开源软件,恐怕没有多少人能说清楚。本报评析实验室在开源专家的意见的基础上对其中颇有影响力的企业级开源软件进行了整理,以供读者参考。
  • 标签:开源  软件  盘点

Turbine
Turbine是基于Servlet的框架包,也是开放源代码Jakarta项目。目前还没有关于Turbine的大量文档。它类似于Struts,但是有一些主要区别,突出的一点就是它并没有与JSP耦合。Turbine还有一个特点是它提供了大量可重用的构件,不过这些构件是离散的。

Java版Web服务器

Jetty
Jetty是一个免费的和开源的Servlet容器。Jetty最大的特点是它既可以作为独立的Web服务器,也可以为一个已经存在的应用程序提供Servlet功能。也就是说它可以非常轻易地嵌入到个人的Java 应用中,这样用户就不必把Web应用发布到一个服务器上。正因为Jetty的存在,Tomcat才不至于成为一枝独秀,Web服务器领域才会更加有趣。

Tomcat
Tomcat是一个免费、开源的Servlet容器,它是Apache基金会的Jakarta项目中的旗舰产品,由Apache、Sun和其他一些公司及个人共同开发而成。它曾被JavaWorld杂志评为2001年度最具创新的Java产品(Most Innovative Java Product),同时它又是Sun公司官方推荐的Servlet和JSP容器。Servlet和JSP的最新规范都可以在Tomcat的新版本中得到实现。它是目前应用最为广泛的Servlet容器,许多J2EE应用服务器都集成它作为自己的Servlet容器。

Java版 持久层框架

Apache Torque
Apache Torque是一个使用关系数据库作为存储手段的Java应用程序持久化工具,是Apache 的公开源代码项目。Torque由Web应用程序框架Jakarta Apache Turbine发展而来,但现在已完全独立于Turbine。Torque 主要包含两部分:一部分是Generator,它可以产生应用程序需要的所有数据库资源,包括SQL和Java文件。另外一部分是Runtime,提供使用这些代码访问数据库的运行时环境。

Hibernate
Hibernate最早是Sourceforge.net的一个子项目,后被JBoss购入麾下,目前已成为炙手可热的持久数据管理框架。它是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲地使用对象编程思维来操纵数据库。

iBatis
iBatis提供了ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象, 这一层与通过Hibernate 实现ORM 而言基本一致。对于具体的数据操作,Hibernate 会自动生成SQL 语句,而iBatis 则要求开发者编写具体的SQL 语句。相对Hibernate等“全自动”ORM机制而言,iBatis 以SQL开发的工作量和数据库移植性上的让步,为系统设计提供了更大的自由空间。

Java版J2EE框架

Spring
Spring是由Interface21公司的CEO Rod Johnson领导开发的开源J2EE应用框架,它解决了许多在J2EE开发中常见问题。Spring还提供了管理业务对象的一致方法,并且鼓励对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。

Spring为J2EE应用开发提供了一个完整的分层体系架构,为使用轻量级的方法解决复杂的企业级应用开发提供了一个最佳实践。Spring应用框架由几个模块组成:

◆Spring核心容器
以Setting Injection为主的IoC(反转控制容器), 通过XML配置模式,应用组件间的依赖进行关联。
◆Spring Context
Spring Context作为贯穿Spring整体的一个引线,为框架内集成的服务提供上下文环境。
◆Spring MVC框架
将已有的Web MVC框架与Spring进行集成,使现有的MVC框架能与Spring 的IoC容器进行挂接,提供从控制层到业务层的反转控制式编程。
◆Spring AOP
为Spring提供了面向方面的编程能力。
◆Spring ORM
集成了Hibernate、JDO、Ibatis SQL Map等持久化组件,为上层应用开发提供了一致的持久化编程模型。
◆Spring DAO
将JDBC的应用开发操作进行抽象,提供统一的模板方法和异常层次结构,同时提供透明的事物处理机制,极大地简化了基于数据库应用的开发过程。

Spring框架的这种松耦合编程体系结构和非入侵性的特性,使得J2EE的应用开发不依赖于任何J2EE应用服务器,为提高J2EE应用开发的整体质量起到了极其关键的作用。

JFoxSOAF
JFoxSOAF(JFox Service-Oriented Application Framework)由Huihoo.org 开源社区开发,是以Type3模式的IoC为核心的J2EE应用开发框架。JFoxSOAF采用基于IoC微内核的系统设计架构,将现有众多开源的成熟软件框架、组件集成到一个体系中来,将原来相对零散的部件构成一个整体,为应用项目的开发提供一个完整的框架结构和实践的指南。JFoxSOAF作为应用服务器上层的技术基础件,提供三个层面的系统服务,即应用服务层、业务服务层、系统服务层。 

JFoxSOAF与Spring的不同表现在以下几方面:

◆IoC核心容器
JFoxSOAF采用基于构造器注入方式的IoC容器,无需在大量的XML描述文件中声明类间的依赖关系,极大地简化了应用开发的部署描述。
◆独立的上下文环境
JFoxSOAF采用独立的上下文环境,通过ServiceFactory, 任何一个类都可以在任何环境获得注入在IoC容器中的实例,从而建立起引用关系。Spring在Web应用中,必须通过Web容器环境获得上下文的环境。
◆JDBC开发模板
JFoxSOAF集成了DBUtils作为JDBC DAO的模板框架,提供数据自动填装功能,简化了CRUD操作的开发过程,简单易用。Spring的DAO模板功能也非常强大,但其需要手工进行数据填装操作,增大了应用开发的复杂度。
◆事务处理
JFoxSOAF采用JOTM作为事务处理器,提供编程式的事务管理,Spring框架提供声明式的事务管理,更易于灵活地配置开发。


共4页: 上一页 [1] [2] 3 [4] 下一页
【内容导航】
2008年第6届OpenOffice.org世界开源大会
2008年上半年IT技术图书阅读排行大盘点
开源虚拟化技术Xen
Sun以10亿美元并购开源数据库厂商MySQL
2007盘点专题:有多少盘点值得回味?
 
 验证码: (点击刷新验证码)   匿名发表
  • .NET程序员面试指南

  • 作者:朱毅
  • 本书着重针对.NET技术职位的应聘者,在.NET框架各个技术类别中,选取最常出现在.NET面试中的问题,进行分析和解答,同时解释和..
Copyright©2005-2008 51CTO.COM 版权所有