网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.setFullYear 方法.
.Java 关于中文乱码问题的解决方案.
.新手学堂:几个著名Java开源缓存.
.parseFloat 方法.
.实现游戏开发中的屏幕滚动功能.
.按位“异或”运算符 (^).
.让界面更加绚丽 Java SE 6.0 GUI.
.用J2SE1.4进行Internet安全编程.
.测试实践:Eclipse 之 JUnit.
.Java Socket编程(二).
.设计自己的printpreviewdialog.
.javabean与ejb的区别.
.Java 3D帖图扭曲.
.幸福的联姻:Java和Python.
.用JAVA开发CORBA应用实例.
.Java Map 集合类简介.
.使用JakartaCommons之库组件攻略.
.每周新书推荐:IBM & Java.
.java 应用程序 标题栏图标 的 自.
.JAVA进阶-如何提升JSP应用程序的.

J2EE中使用EntityBean和JDO的优缺点

发表日期:2008-1-5



  实体 bean: 提供健壮的数据持久性。bean 容器处理大部分的数据完整性、资源治理和并发性功能,从而使开发人员关注业务逻辑和数据处理,而不是这些低级细节。使用 bean 治理的持久性(Bean Managed Persistence,BMP)实体 bean 时,开发人员编写持久性代码而容器确定何时执行该代码。使用容器治理的持久性(Container Managed Persistence,CMP)实体 bean 时,容器生成持久性代码并治理持久性逻辑。
  
  JDO: 只是提供面向对象的持久数据存储。开发人员使用 POJO(无格式普通 Java 对象,plain ordinary Java object)来装入和存储持久数据。
  
  实体 bean 主要有下列优点:
  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 还存储类型层次结构的完整信息,并能根据类型(父类和接口)实现请求,而不是只了解持久实例的特定局部类型。
上一篇:利用WebLogic的POOL连接数据库 人气:615
下一篇:J2EE 与 IBM 对象-关系数据库系列连载一 人气:412
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐