实体域对象的 持久化模式
1、ORM模式
对象-关系映射(Object-Relation Mapping)模式,指的是在单个组件中负责所有实体域对象的持久化,封装数据访问细节。
2、主动域对象模式
优点:
1.在实体域对象中封装自己的数据访问细节,过程域对象完全负责业务逻辑,使程序结构更加清晰。
2. 如果关系数据模型发生改变,只需要修改主动域对象的代码,不需修改过程域对象的业务方法。
缺点:
1.在实体域对象的实现中包含SQL语句
2.每个实体域对象都负责自身得数据访问实现,把这一职责分散在多个对象中,这会导致实体域对象重复实现一些共同的数据访问操作,从而造成重复编码。
主体域对象本身位于业务逻辑曾,因此采用的还是三层应用结构!并没有从业务层独立出持久化层!
3、JDO模式
JavaDataObjects(JDO)是SUN公司制定的描述对象持久化语义地标准API,因此,采用该模式时,整个应用为四层应用结构。(SUN提供API,第三方实现)
严格的说,JDO并不是对象-关系映射接口,因为它支持把对象持久化到任意一种存储系统中,包括:
1.关系数据库
2.面向对象的数据库
3.基于XML的数据库
4.其他专有的存储系统。
4、CMP模式
CMP(Container-managed Persistence)表示由EJB容器来管理实体EJB的持久化,EJB容器封装了对象-关系的映射及数据访问细节。
cmp与ORM的相似之处:都提供了对象-关系映射服务,都把对象持久化的任务从业务逻辑程序中分离出来
区别:CMP负责持久化实体EJB组件,而orm负责持久化POJO,它是普通的基于JavaBean形式的实体域对象。
二者相比前者的不足:
1、开发人员开发的实体EJB必须遵守复杂的J2EE规范,而多数的ORM中间件不强迫域对象必须满足特定的规范
2、实体EJB只能运行在EJB容器中,而POJO可以运行在任何一种Java环境中,
3、目前,EJB容器提供的对象-关系映射能力有限,许多ORM中间件都提供了完善的对象-关系映射服务。
4、尽管按照J2EE规范,EJB应该是一种可移植的组件,可是实际上,却受到很大的限制,因为不同厂商生产的CMP引擎差异很大!
分享到:
相关推荐
Hibernate学习笔记 该文档为Hibernate入门到精通的学习笔记
适合初学者,想快速上手hibernate,附有hibernate学习笔记
Java 从入门到精通笔记整理 包含内容 Unix,Java 基础,数据库(Oracle jdbc Hibernate pl/sql),web,JSP,Struts,Ajax,Spring,Ejb,java和模式 对于初学者而言,一个好的笔记有时候比一本好书更有用!
Java相关课程系列笔记之十四Hibernate学习笔记(建议用WPS打开) Java相关课程系列笔记之十五Spring学习笔记(建议用WPS打开) Java相关课程系列笔记之十一Ajax学习笔记(建议用WPS打开) Java相关课程系列笔记之四...
为详细笔记,有批注,一百多页,适合初学者。包含内容: Unix,Java 基础,数据库(Oracle jdbc Hibernate pl/sql),web,JSP,Struts,Ajax,Spring,Ejb,Java和模式。
Java应用广泛,涉及个人PC、数据...《java从零基础到精通》为详细笔记,doc格式,共173页。包含内容: Unix,Java 基础,数据库(Oracle jdbc Hibernate pl/sql),web,JSP,Struts,Ajax,Spring,Ejb,Java和模式。
Hibernate最详细的学习笔记,让你从入门到精通,最快速度的掌握Hibernate的操作。
Java学习笔记,word文档,对其中内容由批注,很好的学习材料。 java从零基础到精通的整个笔记 Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, Ejb, java和模式
JavaSE+JavaEE企业级开发 全程笔记免费下载,内容详尽,doc文档,共173页,六号字体,双栏排版。 *、Java 基础, *、web, *、数据库(Mysql Oracle jdbc Hibernate hql/sql), *、JSP, *、Ajax *、Struts, *、...
本文档为详细笔记,doc格式,共173页。包含内容: Unix,Java 基础,数据库(Oracle jdbc Hibernate pl/sql),web,JSP,Struts,Ajax,Spring,Ejb,Java和模式。另附学习视频链接地址,欢迎下载。
2. Hibernate学习门槛不低,要精通门槛更高。门槛高在怎么设计O/R映射,在性能和对象模型之间如何权衡取得平衡,以及怎样用好Hibernate缓存与数据加载策略方面需要你的经验和能力都很强才行。国内目前前的情况精通...
本文档为详细笔记,Setup格式,共173页。包含内容: Unix,Java 基础,数据库(Oracle jdbc Hibernate pl/sql),web,JSP,Struts,Ajax,Spring,Ejb,Java和模式。另附学习视频链接地址,欢迎下载。
Struts--Ejb--Hibernate--Spring--Ajax(ext,dw2)-->ssh框架 java之父gosling 1990 sun启动 绿色计划 1992 创建oak语言-->java 1994 gosling参加硅谷大会演示java功能,震惊世界 1995 sun正式发布java第一个版本,...
从入门到精通笔记 Java SE 篇 Java EE 篇 Spring 全家桶系列 ORM 框架系列(待整理) 二、Java SE 至 Java EE系列项目整合 Java SE 学习阶段项目练习 Java EE 学习阶段项目练习 三、Java EE 企业级框架篇章 SSH 系列...
十年IT行业从业经历,曾就职于上海花旗银行软件开发部担任项目经理多年,任职于国内等多家知名教育机构,精通javaweb, 前端技术,J2EE技术体系,熟练使用Spring、SpringMVC,Mybatis 、hibernate、struts等java和...
2009-02-24 08:42 165165 37065 常见的专业问题解决办法\Java核心技术学习笔记--异常和调试_Believe ┭┮ YourSelf.mht 2009-03-20 16:36 142683 39110 常见的专业问题解决办法\JR - 专题论坛问题 - eclipse??如何...