orm 订阅
对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。 这也同时暗示着额外的执行开销;然而,如果ORM作为一种中间件实现,则会有很多机会做优化,而这些在手写的持久层并不存在。 更重要的是用于控制转换的元数据需要提供和管理;但是同样,这些花费要比维护手写的方案要少;而且就算是遵守ODMG规范的对象数据库依然需要类级别的元数据。 展开全文
对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。 这也同时暗示着额外的执行开销;然而,如果ORM作为一种中间件实现,则会有很多机会做优化,而这些在手写的持久层并不存在。 更重要的是用于控制转换的元数据需要提供和管理;但是同样,这些花费要比维护手写的方案要少;而且就算是遵守ODMG规范的对象数据库依然需要类级别的元数据。
信息
外文名
Object Relational Mapping
别    称
ORM
中文名
对象关系映射
适用领域范围
程序开发
对象关系映射定义
对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。因此,对象-关系映射(ORM)系统一般以中间件的形式存在,主要实现程序对象到关系数据库数据的映射。
收起全文
精华内容
下载资源
问答
  • ORM

    2019-04-03 22:16:10
    JPA是一种ORM规范,不是ORM框架,Hibernate是ORM框架的一种实现 1.JPA: 本身是一种ORM规范,不是ORM框架.由各大ORM框架(Hibernate)提供实现. 2.Hibernate:目前最流行的ORM框架.设计灵巧,性能一般(自己去控制性能,...

    JPA是一种ORM规范,不是ORM框架,Hibernate是ORM框架的一种实现
    1.JPA
    本身是一种ORM规范,不是ORM框架.由各大ORM框架(Hibernate)提供实现.

    2.Hibernate:目前最流行的ORM框架.设计灵巧,性能一般(自己去控制性能,不是很好控制),文档丰富.(完全自动操作) 是一个完整的ORM框架,常规CRUD我们不需要写一句SQL; 你表面上看到操作时非常简单,其实底层都是不简单的,它都是做了层层的封装,所以性能方面要比我们写原生sql性能要低的多

    3.Hibernate.MyBatis:本是apache的一个开源项目iBatis,提供的持久层框架包括SQL Maps和Dao,允许开发人员直接编写SQL(更好灵活).(Sql操作方式)MyBatis 并不是一个完整的ORM框架,因为我们还需要自己去写全部SQL,如果查询出来数据的列和对象中的 字段不一致,还得手动进行一个映射配置

    展开全文
  • orm

    2019-09-27 09:53:39
    Object/Relation Mapping 对象-关系数据库映射 什么是ORM? 对象关系映射(ORM)提供了概念性的、易于理解的模型化数据的方法。ORM方法论基于三个核心原则: 简单:以最基本的形式建模数据。 传达性:数据库结构被...

    Object/Relation Mapping

      对象-关系数据库映射
      什么是ORM?
      对象关系映射(ORM)提供了概念性的、易于理解的模型化数据的方法。ORM方法论基于三个核心原则:
      简单:以最基本的形式建模数据。
      传达性:数据库结构被任何人都能理解的语言文档化。
      精确性:基于数据模型创建正确标准化了的结构。
      典型地,建模者通过收集来自那些熟悉应用程序但不熟练的数据建模者的人的信息开发信息模型。建模者必须能够用非技术企业专家可以理解的术语在概念层次上与数据结构进行通讯。建模者也必须能以简单的单元分析信息,对样本数据进行处理。ORM专门被设计为改进这种联系。

    对象关系映射(Object Relational Mapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将java程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外 一种形式。
    目前流行的 ORM 产品
    Hibernate
    产生渊源
    你在DAL中写了很多的方法来读取对象数据,改变状态对象等等任务。而这些代码写起来总是重复的。
    看看DAL代码,你肯定会看到很多近似的通用的模式。
    人们就想了,能不能自动化实现DAL呢,其实大部分是可以的,所以ORM的各种工具诞生了,他们会自动为你生成dal的代码,
    ORM是框架、产品、还是????
    是一套可以让大家规范的、简单的、效率高的处理对象和关系数据的架构。当然包括基于此架构的产品。

    .NET的 LINQ是不是基于ORM呢,对ORM的封装?

    转载于:https://www.cnblogs.com/yours369000/archive/2009/08/31/1557612.html

    展开全文
  • ORM

    2016-02-28 17:14:10
    什么是ORM  对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的...

    <1>什么是ORM

      对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。其中.业务实体Object在内存中表现为对象,在数据库中表现为关系数据.内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。因此,对象-关系映射(ORM)系统一般以中间件的形式存在,主要实现程序对象到关系数据库数据的映射.

    2011-01-06_153541

    这时有人会问为什么需要ORM?

    从项目中数据流存储形式这个角度说起. 简单拿MVC这种分层模式.来说. Model作为数据承载实体. 在用户界面层和业务逻辑层之间数据实现面向对象OO形式传递. 当我们需要通过Control层分发请求把数据持久化时我们会发现.  内存中的面向对象的OO如何持久化成关系型数据中存储一条实际数据记录呢?

    一种简单的方案是采用硬编码  方式,为每一种可能的数据库访问操作提供单独的方法。 
            这种方案存在以下不足: 
            1.持久化层缺乏弹性。一旦出现业务需求的变更,就必须修改持久化层的接口 
            2.持久化层同时与域模型与关系数据库模型绑定,不管域模型还是关系数据库模型发生变化,毒药修改持久化曾的相关程序代码,增加了软件的维护难度。 

    一种方式方式是采用ORM   方式

     ORM提供了实现持久化层的另一种模式,它采用映射元数据来描述对象关系的映射,使得ORM中间件能在任何一个应用的业务逻辑层和数据库层之间充当桥梁。Java典型的ORM中间件有:Hibernate,ibatis,speedframework。 
            ORM的方法论基于三个核心原则: 
      · 简单:以最基本的形式建模数据。 
      · 传达性:数据库结构被任何人都能理解的语言文档化。 
      · 精确性:基于数据模型创建正确标准化了的结构。

    <2>理解ORM

     让我们从O/R开始。字母O起源于"对象"(Object),而R则来自于"关系"(Relational)。几乎所有的程序里面,都存在对象和关系数据库。在业务逻辑层和用户界面层中,我们是面向对象的。当对象信息发生变化的时候,我们需要把对象的信息保存在关系数据库中。 
            当你开发一个应用程序的时候(不使用O/R Mapping),你可能会写不少数据访问层的代码,用来从数据库保存,删除,读取对象信息,等等。你在DAL中写了很多的方法来读取对象数据,改变状态对象等等任务。而这些代码写起来总是重复的。 

            ORM解决的主要问题是对象关系的映射。域模型和关系模型分别是建立在概念模型的基础上的。域模型是面向对象的,而关系模型是面向关系的。一般情况下,一个持久化类和一个表对应,类的每个实例对应表中的一条记录,类的每个属性对应表的每个字段。 
            ORM技术特点: 
            1.提高了开发效率。由于ORM可以自动对
    模型对象与数据库中的Table进行字段与属性的映射,所以我们实际可能已经不需要一个专用的、庞大的数据访问层。 
            2.ORM提供了对数据库的映射,不用sql直接编码,能够像操作对象一样从数据库获取数据。

    <3>ORM 优缺点

    ORM的缺点是会牺牲程序的执行效率和会固定思维模式。 
            从系统结构上来看,采用ORM的系统一般都是多层系统,系统的层次多了,效率就会降低。ORM是一种完全的面向对象的做法,而面向对象的做法也会对性能产生一定的影响。 

            在我们开发系统时,一般都有性能问题。性能问题主要产生在算法不正确和与数据库不正确的使用上。ORM所生成的代码一般不太可能写出很高效的算法,在数据库应用上更有可能会被误用,主要体现在对持久对象的提取和和数据的加工处理上,如果用上了ORM,程序员很有可能将全部的数据提取到内存对象中,然后再进行过滤和加工处理,这样就容易产生性能问题。
     
           

    在对对象做持久化时,ORM一般会持久化所有的属性,有时,这是不希望的。 
            但ORM是一种工具,工具确实能解决一些重复,简单的劳动。这是不可否认的。但我们不能指望工具能一劳永逸的解决所有问题,有些问题还是需要特殊处理的,但需要特殊处理的部分对绝大多数的系统,应该是很少的。

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 83,284
精华内容 33,313
关键字:

orm