技术开发 频道

Spring PK EJB 3.0,我们该选择哪一个?



【IT168 专稿】Spring EJB 3.0 两种主流技术之间作出选择是非常艰难的。本文探讨了两者间的异同,并阐述了进行技术比较的关键环节。

一、简介

    如今的软件开发人员面临的各种技术选择令人眼花缭乱。涉及到具体项目案例时,很难说哪一种技术更优。在基于java平台的企业开发领域,针对Spring框架和EJB 3.0之间的辩论异常激烈。众说纷纭,莫衷一是。本文尽量从客观的视角比较两者的优劣。 
  
   
Spring EJB 在概念上属于两个不同的范畴,Spring是一种技术实现,EJB则是技术规范。但两者确实存在交叉重叠,比如他们都提供了为java应用递送中间件服务的机制。Spring框架的推出正是针对EJB的,两者之间自然就存在着可比性。随着EJB最新版本3.0的发布,对于先前版本的缺欠做出了很大改进。那么Spring如何能持续地提供超越EJB的特性呢?

本文撷取了企业级应用开发环境内,SpringEJB 3各自最重要的特性。文中以机票预定系统为案例阐述每个特性的要旨,涉及业务领域模型以及企业级应用开发中的并发控制、事务处理、消息处理、任务调度等范畴。

定义  

在深入比较分析之前,先看一下Spring EJB各自声称要实现的是什么。在Spring的网站上,Spring被定义为“基于Java/J2EE分层应用框架”。而EJB则将自己定义为“分布式面向对象企业级应用的组件架构”。

    首先,从定义可看出,二者都将自己的产品定位在企业级Java开发的领域。Spring进一步把自己声明为应用框架,而EJB则是声明为一种架构。架构的含义很广,一般来说指的是软件系统不轻易改变的重要策略或者软件结构。框架意味着技术支撑而架构强调的是策略。以上是SpringEJB之间的细微差别。值得注意的是EJB推出了分布式组件开发的解决方案而Spring则没有提供类似的工具。
0
相关文章