J2EE中用EntityBean和JDO的优缺点分析

EntityBean: 提供健壮的数据持久性。bean 容器处理大部分的数据完整性、资源管理和并发性功能,从而使开发人员关注业务逻辑和数据处理,而不是这些低级细节。使用 bean 管理的持久性(Bean Managed Persistence,BMP)实体 bean 时,开发人员编写持久性代码而容器确定何时执行该代码。使用容器管理的持久性(Container Managed Persistence,CMP)实体 bean 时,容器生成持久性代码并管理持久性逻辑。

JDO: 只是提供面向对象的持久数据存储。开发人员使用 POJO(无格式普通 Java 对象,plain ordinary Java object)来装入和存储持久数据。

EntityBean 主要有下列优点:

1、标准化。EJB 规范定义一组与供应商无关的接口,J2EE 供应商可以实现这些接口来支持实体 bean。这种标准化允许采用最佳实践的开发并缩短雇用新开发人员时的适应期。因为基本的组件体系结构和设计模式大家都知道,所以很容易找到合格的人才来实现它们。

2、容器管理的服务。正如我们在本系列的前两篇文章中讨论的那样,EJB 容器管理的服务为处理诸如安全性、事务处理、连接合用和资源管理之类的企业功能提供了极大的好处。

3、透明持久性。CMP时容器能自动管理持久性语义。虽然使用 BMP 实体 bean 时,开发人员必须编写持久性逻辑,而容器则确定何时调用由开发人员定义的方法。同时使用 CMP 和 BMP 实体 bean 时,容器决定何时持续保持 bean 的状态以及如何确保与底层数据存储的数据完整性和并发性。

4、事务支持。开发人员对 CMP 事务(隔离级别、事务需求和方法的包含/排除)有粗粒度的控制权,对 BMP 事务有细粒度的控制权,这些控制都是通过在 bean 代码中以程序方式处理事务语义实现的。在这两种情况下,容器管理事务并确定是否应该提交给定的事务。

5、基于组件的设计。实体 bean 被设计成自包含组件,这些组件配置有部署描述符,无需更改任何代码就可以将它们部署到任何 J2EE 应用程序服务器。

总之,实体 bean的优点是可以从标准化和业界最佳实践中受益,简化了企业开发的某些复杂性。缺点则是:

1、设计复杂。

2、由于企业 bean 和(尤其是)实体 bean 的复杂性,所以一次迭代(设计/构建/测试/集成/测试/部署)所花的时间比其他 Java 持久性解决方案所花的时间可能长很多。

3、响应时间不理想。

4、资源占用过高,总是会消耗掉大量的服务器资源。

相比entity bean, JDO的优点是:

1、设计简单。

2、细粒度控制,允许开发人员对整个持久性进程进行完全控制,包括高速缓存、持久性、并发性和同步等。

3、编码简单。JDO 体系结构向开发人员隐藏了低级别的持久性细节。

4、JDO 并不仅仅使 Java 对象持久;它还透明地处理整个相关对象图的持久性。因此,当实例被持久存储时,它所维护的对其它对象实例的任何内部引用也都被持久存储(除非它们已被声明为瞬态)。JDO 还存储类型层次结构的完整信息,并能根据类型(父类和接口)实现请求,而不是只了解持久实例的特定局部类型。

时间: 2025-01-20 10:55:25

J2EE中用EntityBean和JDO的优缺点分析的相关文章

js闭包所用的场合以及优缺点分析

  这篇文章主要介绍了js闭包所用的场合以及优缺点分析,十分的详细使用,有需要的小伙伴可以参考下. 先上段代码: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 //函数a function a() { var i=0; //函数b function b() { alert(++i); } return b; } //函数c var c = a(); c(); 代码特点: 1.函数b嵌套在函数a内部; 2.函数a返回函数b. 代码中函数a的内部函数b,被函数a外面的一个变量

linux下查看动态链接库依赖关系的命令 x86: ldd *.so arm: arm-linux-readelf -d *.so 实际例子: 以项目中用到的库librtsp.so分析: lijun@ubuntu:~/workspace$ arm-hisiv100nptl-

linux下查看动态链接库依赖关系的命令 x86:ldd    *.so arm:arm-linux-readelf    -d    *.so 实际例子:以项目中用到的库librtsp.so分析:lijun@ubuntu:~/workspace$ arm-hisiv100nptl-linux-ld -d librtsp.so arm-hisiv100nptl-linux-ld: warning: liblog.so, needed by librtsp.so, not found (try u

浅谈JavaScript事件绑定的常用方法及其优缺点分析_javascript技巧

传统方式  element.onclick = function(e){ // ... };  1.  传统绑定的优点 非常简单和稳定,可以确保它在你使用的不同浏览器中运作一致 处理事件时,this关键字引用的是当前元素,这很有帮组 2. 传统绑定的缺点 传统方法只会在事件冒泡中运行,而非捕获和冒泡 一个元素一次只能绑定一个事件处理函数.新绑定的事件处理函数会覆盖旧的事件处理函数 事件对象参数(e)仅非IE浏览器可用 W3C方式  element.addEventListener('click'

J2EE 中使用EntityBean和JDO各有什么优点缺点

j2ee 实体 bean: 提供健壮的数据持久性.bean 容器处理大部分的数据完整性.资源管理和并发性功能,从而使开发人员关注业务逻辑和数据处理,而不是这些低级细节.使用 bean 管理的持久性(Bean Managed Persistence,BMP)实体 bean 时,开发人员编写持久性代码而容器确定何时执行该代码.使用容器管理的持久性(Container Managed Persistence, CMP)实体 bean 时,容器生成持久性代码并管理持久性逻辑. JDO: 只是提供面向对象

设计师不应该错过的响应式设计框架(含优缺点分析)

Ethan Marcotte称响应式设计是基于网格建立一个网站.Marcotte定义这项技术后,响应式设计框架开始出现,主要是css和JavaScript的结合.许多框架都是开源的,可以免费下载和快速定制. 当下最火热的框架就是Bootstrap和 Foundation了. 随着响应式设计框架越来越火,一个巨大的争议出现了:为什么一个专业的设计师还需要用这些框架呢? 许多人宣称响应式框架是可怕的,因为他们根本不懂一点点html和css的知识.下面是另一些具有标志性的反对使用框架的意见: 设计师可

百合网CEO田范江:IT男谈恋爱的优缺点分析

百合网 CEO田范江 [TechWeb报道]9月12日消息,百合网CEO田范江在今天的互联网大会上做了主题为"IT男的爱情"的演讲,他认为IT男最大的优点是智商高,短处是不善表达.不注重外表. 田范江表示,IT男在婚恋中的一个问题是"兔子吃不了窝边草",因为IT男工作环境中女性很少.与此同时,IT生活圈子很窄,没有什么机会在工作场外之外认识女孩.但是IT男对征婚的热情非常高,择偶方面非常认真. 田范江分析了IT谈恋爱的优缺点.他认为,IT男最大的优点是智商高,大学以

主流博客大PK :精选容易优化易推广的博客优缺点分析

博客营销的重要性不言而喻,今天博主将精选几大容易优化容易推广的博客平台推荐给广大博友!并且重点分析各主流博客的优缺点,让您有的放矢的选择适合自己的博客平台. 博客平台推荐之一:百度空间---推广度高,适用性广的博客 推荐指数:★★★★☆ 适用人群:适合所有有写作需求的博主,满足写文章,发图片等基本需求!适合对博客有个性化需求的博主,特别适合懂CSS自定义模板需求者和非主流GGMM! 百度空间优点: 1.百度旗下的博客平台,网络较稳定!搜索引擎权重高,容易收录! 2.博客名称描述可自由填写,比较容

IXWebHosting美国主机优缺点分析

中介交易 SEO诊断 淘宝客 云主机 技术大厅 IXWebHosting怎么样?自从我的网站上线以后就有人不断的发邮件问我这个问题,但是要简单的回复这个问题却不容易,因为不同的人有不同的需求,一家主机不可能适合所有人的需求.满足需求就是好的,不满足就不好.所以我今天特别写这篇文章,分析一下ixwebhosting的优缺点供大家参考,大家再根据自己的需求来确定是否符合自己的要求. IXWebHosting的优点: 1.国外主机商比较自由,不用BeiAn,省去了不少麻烦.例如你要写个Blog还要Be

SEOer网站优化发布外链的几种优缺点分析

众所周知,网站运营优化过程中外部链接建设是我们后期网站维护排名和提升权重的基础,也是我们应该长期坚持和不断总结的过程,今天笔者和大家分析下目前针对百度外部链接建设过程中的几点链接建设误区和一些值得提倡的链接建设方法分析. 第一,高权重平台的软文外链建设.第一点肯定是值得我们努力发扬和坚持长久去做的事情,笔者发现随着搜索引擎的算法不断完善外链建设的难度也是水涨造船高,越来越困难,自己在学习seo的过程中肯定遇到不少的问题或多或少的有一些值得自己肯定的东西,笔者建议不妨以软文的形式分享出来,将对用户