持久化层和ORM简介.ppt

持久化层和ORM简介.ppt

ID:52181559

大小:163.50 KB

页数:16页

时间:2020-04-02

持久化层和ORM简介.ppt_第1页
持久化层和ORM简介.ppt_第2页
持久化层和ORM简介.ppt_第3页
持久化层和ORM简介.ppt_第4页
持久化层和ORM简介.ppt_第5页
资源描述:

《持久化层和ORM简介.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、Hibernate持久化层介绍了解三层软件结构和持久化层一般来讲三层软件体系结构分为一、表述层二、业务逻辑层三、数据库层持久化层位于业务逻辑层和数据库层中间。狭义理解持久化就是把域对象保存到数据库中,广义理解持久化包括和数据库相关的各种操作。持久化层介绍持久化层(PersistentObject)封装了数据访问细节(以持久化类POJO+**.hbm.xml封装数据访问细节),连接数据库,对数据库进行查询,插入,删除,更新。持久化层为业务逻辑层提供面向对象的API(DAO对象)。完善的持久化层应该达到如下目标:1.代码可重用性高,能够完成所有的数据库访问操作。

2、2.如果需要的话,能够支持多种数据库平台。(IBMDB2/MySQL/Oracle9i/Oracle10g/MSSQLServer)3.具有相对独立性,当持久化层的实现发生变化,不会影响上层的实现ORM简介对象关系映射(ObjectRelationalMapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。这也同时暗示着额外的执行开销;然而,如果ORM作为一种中间件实现,则会有很多

3、机会做优化,而这些在手写的持久层并不存在。更重要的是用于控制转换的元数据需要提供和管理;但是同样,这些花费要比维护手写的方案要少ORM简介面向对象是从软件工程基本原则(如耦合、聚合、封装)的基础上发展起来的,而关系数据库则是从数学理论发展而来的,两套理论存在显著的区别。为了解决这个不匹配的现象,对象关系映射技术应运而生。让我们从O/R开始。字母O起源于"对象"(Object),而R则来自于"关系"(Relational)。几乎所有的程序里面,都存在对象和关系数据库。在业务逻辑层和用户界面层中,我们是面向对象的。当对象信息发生变化的时候,我们需要把对象的信息保

4、存在关系数据库中。当你开发一个应用程序的时候(不使用O/RMapping),你可能会写不少数据访问层的代码,用来从数据库保存,删除,读取对象信息,等等。你在DAL中写了很多的方法来读取对象数据,改变状态对象等等任务。而这些代码写起来总是重复的。ORM简介如果打开你最近的程序,看看DAL代码,你肯定会看到很多近似的通用的模式。除此之外,还有更好的办法吗?有,引入一个O/RMapping。实质上,一个O/RMapping会为你生成DAL。与其自己写DAL代码,不如用O/RMapping。你用O/RMapping保存,删除,读取对象,O/RMapping负责生成S

5、QL,你只需要关心对象就好。一般的ORM包括以下四部分:一个对持久类对象进行CRUD操作的API;一个语言或API用来规定与类和类属性相关的查询;一个规定mappingmetadata的工具;一种技术可以让ORM的实现同事务对象一起进行dirtychecking,lazyassociationfetching以及其他的优化操作。ORM框架比较目前ORM框架的产品非常多,除了各大著名公司、组织的产品外,甚至其他一些小团队也都有推出自己的ORM框架。目前流行的ORM框架有如下这些产品。传统的EntityEJB:EntityEJB实质上也是一种ORM技术,这是一种

6、备受争议的组件技术,很多人说它非常优秀,也有人说它一钱不值。事实上,EJB为J2EE的蓬勃发展赢得了极高的声誉。虽然EJB作为一种重量级、高花费的ORM技术,具有不可比拟的优势。但由于其必须运行在EJB容器内,而且学习曲线陡峭,开发周期、成本相对较高,因而限制EJB的广泛使用。ORM框架比较Hibernate:目前最流行的开源ORM框架,已经被选作JBoss的持久层解决方案。整个Hibernate项目也一并投入了JBoss的怀抱,而JBoss又加入了RedHat组织。因此,Hibernate是属于RedHat组织的一部分。IBATIS:Apache软件基金组

7、织的子项目。与其称它是一种ORM框架,不如称它是一种“SqlMapping”框架。相对Hibernate的完全对象化封装,iBATIS更加灵活,但开发过程中开发人员需要完成的代码量更大,而且需要直接编写SQL语句。ORM框架比较Oracle的TopLink:作为一个遵循OTN协议的商业产品,TopLink在开发过程中可以自由下载和使用,但一旦作为商业产品使用,则需要收取费用。可能正是这一点,导致了TopLink的市场占有率?ORM的优点优点:1.提高了开发效率。由于ORM可以自动对Entity对象与数据库中的Table进行字段与属性的映射,所以我们实际可能已

8、经不需要一个专用的、庞大的数据访问层。2.ORM提供

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。