`
jinnianshilongnian
  • 浏览: 21513897 次
  • 性别: Icon_minigender_1
博客专栏
5c8dac6a-21dc-3466-8abb-057664ab39c7
跟我学spring3
浏览量:2420513
D659df3e-4ad7-3b12-8b9a-1e94abd75ac3
Spring杂谈
浏览量:3010257
43989fe4-8b6b-3109-aaec-379d27dd4090
跟开涛学SpringMVC...
浏览量:5640608
1df97887-a9e1-3328-b6da-091f51f886a1
Servlet3.1规范翻...
浏览量:260219
4f347843-a078-36c1-977f-797c7fc123fc
springmvc杂谈
浏览量:1597953
22722232-95c1-34f2-b8e1-d059493d3d98
hibernate杂谈
浏览量:250370
45b32b6f-7468-3077-be40-00a5853c9a48
跟我学Shiro
浏览量:5860614
Group-logo
跟我学Nginx+Lua开...
浏览量:702889
5041f67a-12b2-30ba-814d-b55f466529d5
亿级流量网站架构核心技术
浏览量:785757
社区版块
存档分类
最新评论

【第八章】 对ORM的支持 之 8.1 概述 ——跟我学spring3

阅读更多

8.1  概述

8.1.1  ORM框架

       ORM全称对象关系映射(Object/Relation Mapping),指将Java对象状态自动映射到关系数据库中的数据上,从而提供透明化的持久化支持,即把一种形式转化为另一种形式。

       对象与关系数据库之间是不匹配,我们把这种不匹配称为阻抗失配,主要表现在:

  • 关系数据库首先不支持面向对象技术如继承、多态,如何使关系数据库支持它们;
  • 关系数据库是由表来存放数据,而面向对象使用对象来存放状态;其中表的列称为属性,而对象的属性就是属性,因此需要通过解决这种不匹配;
  • 如何将对象透明的持久化到关系数据库表中;
  • 如果一个对象存在横跨多个表的数据,应该如何为对象建模和映射。

其中这些阻抗失配只是其中的一小部分,比如还有如何将SQL集合函数结果集映射到对象,如何在对象中处理主键等。

ORM框架就是用来解决这种阻抗失配,提供关系数据库的对象化支持。

ORM框架不是万能的,同样符合80/20法则,应解决的最核心问题是如何在关系数据库表中的行和对象进行映射,并自动持久化对象到关系数据库。

ORM解决方案适用于解决透明持久化、小结果集查询等;对于复杂查询,大结果集数据处理还是没有任何帮助的。

目前已经有许多ORM框架产生,如Hibernate、JDO、JPA、iBATIS等等,这些ORM框架各有特色,Spring对这些ORM框架提供了很好的支持,接下来首先让我们看一下Spring如何支持这些ORM框架。

8.1.2  Spring对ORM的支持

       Spring对ORM的支持主要表现在以下方面:

  • 一致的异常体系结构,对第三方ORM框架抛出的专有异常进行包装,从而在使我们在Spring中只看到DataAccessException异常体系;
  • 一致的DAO抽象支持:提供类似与JdbcSupport的DAO支持类HibernateDaoSupport,使用HibernateTemplate模板类来简化常用操作,HibernateTemplate提供回调接口来支持复杂操作;
  • Spring事务管理:Spring对所有数据访问提供一致的事务管理,通过配置方式,简化事务管理。

Spring还在测试、数据源管理方面提供支持,从而允许方便测试,简化数据源使用。

接下来让我们学习一下Spring如何集成ORM框架—Hibernate。

 

原创内容,转载请注明出处【http://sishuok.com/forum/blogPost/list/0/2495.html

20
2
分享到:
评论

相关推荐

    跟开涛学Spring

    1.35 【第八章】 对ORM的支持 之 8.1 概述 ——跟我学spring3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .350 1.36 【第八章】 对ORM的支持 之 8.2 集成Hibernate3 ——跟我学spring3 . . . . . . ...

    跟我学Spring3(8.1)对ORM的支持之概述Java

    通过阅读《跟我学Spring3(8.1)对ORM的支持之概述Java开发Java经验技巧共3页.pdf》这本书或文档,你可以深入学习Spring如何无缝地集成ORM框架,提升你的Java开发技能。但请注意,压缩包内的"赚钱项目"文件可能与此...

    跟我学spring

    标题“跟我学spring”和描述“spring 的使用,每个知识点和项目中的运用,20章的介绍。”暗示这是一份详细介绍Spring框架使用方法的教程或手册,覆盖了Spring的各个方面,并以实例为导向,深入探讨了每个知识点在...

    跟我学spring3(8-13)

    《跟我学Spring3》这本书详细介绍了Spring框架在多个方面的应用,包括ORM支持、事务管理和Web框架集成等。以下是对这些章节内容的详细说明: 【第八章】 对ORM的支持: 1. **8.1 概述**:ORM(Object-Relational ...

    跟我学spring3(8-13).pdf

    《跟我学Spring3》这本书详细介绍了Spring框架与各种ORM(对象关系映射)框架的集成,以及Spring的事务管理和Web框架集成。以下是其中关键知识点的深入解析: **8. ORM支持** 1. **8.1 概述**:ORM允许开发者以面向...

    跟我学spring3(8-13)1

    《跟我学Spring3》这本书是针对Spring框架的深入学习指南,涵盖了多个关键章节,包括Spring对ORM(对象关系映射)的支持、事务管理和与其他Web框架的集成等内容。以下是各章节主要内容的详细阐述: 1. **第八章:对...

    跟我学spring3,很不错的spring学习资料

    ### 一、Spring 对 ORM 的支持 #### 8.1 概述 - **ORM (Object/Relation Mapping) 框架**:这是一种编程技术,用于将对象模型与关系型数据库之间的数据进行转换。ORM 提供了一种透明的方式来进行数据持久化,简化...

    跟我学spring3(8-13)

    《跟我学Spring3》是一本全面介绍Spring框架的教程,主要涵盖了Spring对ORM支持、事务管理以及与其他Web框架的集成等内容。以下是对其中关键知识点的详细解析: 1. **Spring对ORM的支持**: - **8.1 概述**:这...

    跟我学spring3

    - **Spring支持**:Spring支持多种ORM框架,如Hibernate、MyBatis等。 #### 8.2 集成Hibernate3 - **配置**:配置Hibernate和Spring的集成。 - **示例**: ```xml <bean id="sessionFactory" class="org.spring...

    spring3 学习

    《跟我学Spring3》是一本全面介绍Spring框架的教程,主要涵盖了Spring对ORM支持、事务管理、Web框架集成以及SSH集成开发等多个方面。Spring作为Java领域最流行的应用框架之一,其强大的功能和灵活性使得它在企业级...

    Spring3(8-13)

    《跟我学Spring3》是一本详细讲解Spring 3.0框架的教程,涵盖了Spring对ORM支持、事务管理、Web框架集成以及SSH集成等多个方面。以下是其中一些核心知识点的详细解析: 1. **Spring对ORM的支持**: - **8.1 概述**...

Global site tag (gtag.js) - Google Analytics