ORM简介

    对象关系映射(英语:(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换 。从效果上说,它其实是创建了一个可在编程语言里使用的--“虚拟对象数据库”。
    面向对象是从软件工程基本原则(如耦合、聚合、封装)的基础上发展起来的,而关系数据库则是从数学理论发展而来的,两套理论存在显著的区别。为了解决这个不匹配的现象,对象关系映射技术应运而生。
    对象关系映射(Object-Relational Mapping)提供了概念性的、易于理解的模型化数据的方法。ORM方法论基于三个核心原则: 简单:以最基本的形式建模数据。 传达性:数据库结构被任何人都能理解的语言文档化。 精确性:基于数据模型创建正确标准化的结构。 典型地,建模者通过收集来自那些熟悉应用程序但不熟练的数据建模者的人的信息开发信息模型。建模者必须能够用非技术企业专家可以理解的术语在概念层次上与数据结构进行通讯。建模者也必须能以简单的单元分析信息,对样本数据进行处理。ORM专门被设计为改进这种联系。
    ORM模型的简单性简化了数据库查询过程。使用ORM查询工具,用户可以访问期望数据,而不必理解数据库的底层结构。

——整理自网络

时间: 2024-10-23 07:33:28

ORM简介的相关文章

NBearV3 Step by Step教程——ORM进阶篇

版本 1.2 [2006-11-12] 简介 本教程在前一篇<NBearV3 Step by Step教程--ORM篇>的基础上,演示前文中没有涉及的实体自关联关系:及和性能相关的Attribute的设置:IndexProperty,BatchUpdate:并将详细比较和讨论NBear.Data.Gateway类中的强类型查询方法的使用和注意事项,特别是在不同的Attribute设置选项下的性能差异分析. 注:在阅读本文之前,建议读者先阅读<NBearV3 Step by Step教程-

NBearV3 Step by Step教程——ORM篇

版本 1.7 [2006-1-16] 简介 本教程演示如何基于NBearV3的ORM模块开发一个Web应用程序的全过程.本教程演示的实体关系包括:继承.1对1关联.1对多关联,多对多关联.同时,本教程还演示如何设计实体属性为nullable类型或符合类型. 注:所谓nullable类型主要是针对之类型而言的,.Net2.0位所有的值类型支持nullable,设为nullable的值类型,允许是null的,这样,就可以映射数据库中的null:而符合类型指这个属性是一个复合类型,但是,保存到数据库的

NBearV3——ORM实体关系设计速查手册

版本 1.2 [2006-11-13] 简介 本手册演示NBearV3支持的所有实体关系设计的完全参考.包括1对1,1对多,多对多关联以及自关联的正向.反向引用时的所有情况的设计方法. 注1:本手册并不讨论继承关系.因为,继承关系自然映射到设计实体接口的继承,无需太多额外讨论. 注2:所有的关联在演示中都包含了正向和反向的可读写引用,在实际的项目中,一般并不总是需要同时有正向和反向引用,可以只在一个方向包含引用,或一方包含引用,另一方只包含一个外键ID,也可以只包含只读的引用.并且,在双向引用时

Apache Geronimo和Spring框架,第3部分: 集成DAO与ORM

动态透明地读取数据 简介:本教程将扩展在本系列教程(共 6 个部分)的 第 2 部分 中创建的 Apache Geronimo 应用程 序.在 第 1 部分 中向您介绍了 Geronimo 应用服务器.Spring 框架和控制反转(Inversion of Control,IoC).然后又详细阐述了如何开发.配置和部署第一个基于 Spring 框架的应用程序.在本部 分中,您将了解如何让集成的技术 -- 如 Spring Java 数据库连接(Java Database Connectivity

持久化模式,第 1 部分: 现代 ORM 工具的策略和最佳实践

简介 在过去 5 到 10 年中,开发人员对企业应用程序中的实体进行持久化的方式发生了根本性变化.早期的企业应用程序使用数据库表和 表之间的外键关系进行实体建模.应用程序被看作查看和查询数据库底层模型的方式.近几年,数据库中的实体建模逐渐向应用程序对象 模型中的实体建模转变.现在大家已经意识到,数据库仅仅是存储对象结构所定义的持久化信息的一种机制.把建模从数据库转移到对象 模型中有许多优点,包括: 持久化实体与对它们执行的操作更紧密地集成 有助于创建松散耦合的应用程序组件 与关系数据库相比,面向

使用Agavi进行MVC编程简介,第1部分:使用Agavi开辟一个新世界

简介 如果您是一位严肃的PHP开发人员,您可能已经了解(甚至使用过)PHP应用程序开发框架,比如Symfony.CakePHP和Zend Framework.这些框架提供全面的API,几乎囊括大部分应用程序的需求,并且是PHP应用程序开发的坚实基础.您可以轻松地将它们与第三方库或社区开发的组件集成起来,以实现其他功能. 尽管以上列出的框架无疑是最流行的,但它们却不是仅有的:每个月都会有新的框架出现.这个系列关注一个框架:Agavi,它是一个灵活并且可伸缩的框架,值得专业的PHP开发人员考虑采用.

Python生态环境简介[转]

  Python生态环境简介 作者: Mir Nazim 原文: Python Ecosystem - An Introduction 译者: dccrazyboy  原译: Python生态环境简介 当开发人员从PHP,Ruby或者别的开发环境转换到Python时,所面对的最大问题是缺乏对Python开发的生态环境的充分理解.开发人员非常想得到一份关于完成大多数任务的指南或资源,而不论使用的方法是否规范. 下文所讲到的基本上都来源于我的网站,那存储着Python环境下对于网络应用开发的一些基本

jaxb和dozer简介

一.jaxb是什么     JAXB是Java Architecture for XML Binding的缩写.可以将一个Java对象转变成为XML格式,反之亦然.     我们把对象与关系数据库之间的映射称为ORM,其实也可以把对象与XML之间的映射称为OXM(Object XML Mapping).原来JAXB是Java EE的一部分,在JDK1.6中,SUN将其放到了Java SE中,这也是SUN的一贯做法.JDK1.6中自带的这个JAXB版本是2.0,比起1.0(JSR 31)来,JAX

一、MyBatis简介与配置MyBatis+Spring+MySql

 一.MyBatis简介与配置MyBatis+Spring+MySql 2013-09-06 17:03:24 标签:动态 下载地址 MyBatis学习 之 一.MyBatis简介与配置MyBatis+Spring+MySql MyBatis学习 之 二.SQL语句映射文件(1)resultMap MyBatis学习 之 二.SQL语句映射文件(2)增删改查.参数.缓存 MyBatis学习 之 三.动态SQL语句 MyBatis学习 之 四.MyBatis配置文件 1.1MyBatis简介