快速业务通道

Java企业应用系统框架的比较与选择 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-21

Java企业应用系统框架的比较与选择

时间:2011-01-06 计算机与信息技术 许晓曼 唐文忠

摘 要 目前流行的Java企业应用系统框架种类繁多,为了使开发人员正确选择系统架构从而提高Java企业应用的开发效率,首先针对基于EJB和基于POJOs的较为流行的几种框架分别进行了概述,然后对这些框架从表现层、业务逻辑层和持久层的实现细节进行了对比,总结了Java企业应用系统框架选择需要侧重考虑因素,得到了基于EJB的框架和基于POJOs的框架分别适用的范围。

关键词 Java企业应用系统框架;EJB3.0;Spring;Hibernate

引言

EJB的体系结构是J2EE的基础和核心,J2EE定义了整个标准的应用开发体系结构和一个部署环境,基于EJB的框架一度成为人们开发Java企业应用的首选。随着Java开源项目阵营的发展壮大, 一些基于POJOs(Plan Old Java Objects)的开源框架被越来越广泛地引入到Java企业应用的开发中来。根据复杂程度人们习惯把前者称为重量级框架,把后者称为轻量级框架。Java企业应用框架一般被划分为三个层次:表现层、业务逻辑组件层和持久层。本文主要对目前企业应用对应于这三个层次的两种类型的流行框架进行了细节比较,最后针对Java企业应用的系统框架选择提出作者的观点。

两种类型框架概述

1、基于EJB的重量级框架

由于 EJB容器能够很好的处理系统性能、事务机制、安全访问权限以及分布式运算等问题,基于EJB框架进行开发能保证企业应用平滑发展,而不是发展到一种规模就重新更换一套软件系统,且可以保证开发人员将大部份精力集中在业务逻辑的开发上。采用EJB框架开发的企业应用具有必须继承或依赖EJB容器的特点。EJB充分考虑到了顶级大型项目的需求,使用它几乎能解决企业级应用涉及到的所有问题,相应的基于EJB框架也是一个功能复杂的重量级框架。

J2EE1.4标准规定的EJB 2.1框架缺少设计且实现起来有些过于复杂。当前J2EE5.0的新规范提出的EJB 3.0的目标就是简化开发[1],借鉴了一些基于POJO的思想,它相对于EJB2.1中两个重要的变化分别是:一是使用了Java5中的程序注释工具,注释取代了过多的XML配置文件并且消除了严格组件模型需求;二是采用了基于Hibernate和TopLink思想的O/R Mapping模型。

J2EE5.0的新规范中定义企业应用三个层次的标准实现为:表现层采用JSF(Java Server Face),JSF的开发流程的核心是事件驱动,组件和标签的封装程度非常高,很多典型应用已经不需要开发者去处理http。整个过程是通过IoC(依赖注入)[2]来实现的;业务组件层采用EJB3.0的Session Bean。EJB3.0允许开发者使用藕合松散的组件来开发应用。这些组件通过自己发布的商业接口来耦合,不必像EJB 2.1规范定义的那样一个Bean必须遵守的严格的组件模型,每一个EJB类必须从某一种抽象类中继承,并为容器提供了回调的钩子;持久层采用EJB3.0实体Bean持久化模型,吸收了Hibernate的一些思想采用O/R Mapping模式, EJBQL也有许多重要的改变。

2、基于POJOs的轻量级框架

在基于POJOs轻量级框架上开发的应用程序无需依赖于EJB容器可独立运行,对应于Java企业应用三个层次的轻量级框架技术分别都得到了一定的发展,这三个层次流行的框架如下:

目前比较流行的开源表现层框架主要有Struts和Tapestry。Tapestry与Struts应用框架不同的是,它是基于组件,而不是面向脚本语言(比如JSP和Velocity)的,组件是由一个定义文件(以XML的格式)、一个HTML模板、一个JAVA类构成的;业务组件层轻量级解决方案也不少,包括Spring、Hivemind等。但是目前使用最为广泛的还是Spring框架,Spring框架是一个基于IoC和AOP(面向方面编程)[3]的构架。采用IoC使得它可以很容易的实现bean的装配,提供了简洁的AOP并据此实现事务管理等,但是它不具备处理应用分布式的

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号