什么是ORM?
object-relational-mapping:对象映射关系
为了解决面对对象与 关系数据库存在的互不匹配的现象的技术
简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中
为什么要使用ORM
在程序开发中,数据库保存的表,字段与程序中的实体类之间是没有关联的,在实现持久化时就比较不方便。那么,到底如何实现持久化呢?一种简单的方案是采用硬编码方式,为每一种可能的数据库访问操作提供单独的方法。这种方案存在以下不足:
- 1.持久化层缺乏弹性。一旦出现业务需求的变更,就必须修改持久化层的接口
- 2.持久化层同时与域模型与关系数据库模型绑定,不管域模型还是关系数据库模型发生变化,毒药修改持久化曾的相关程序代码,增加了软件的维护难度
ORM提供了实现持久化层的另一种模式,它采用映射元数据来描述对象关系的映射,使得ORM中间件能在任何一个应用的业务逻辑层和数据库层之间充当桥梁
ORM的方法论基于三个核心原则:
- 简单:以最基本的形式建模数据
- 传达性:数据库结构被任何人都能理解的语言文档化
- 精确性:基于数据模型创建正确标准化了的结构
优/缺点
优点
与传统的数据库访问技术相比,ORM有以下优点:
- 开发效率更高
- 数据访问更抽象、轻便
- 支持面向对象封装
缺点
- 降低程序的执行效率
- 思维固定化