1.什么是ORM?

对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。ORM框架是连接数据库的桥梁,只要提供了持久化类与表的映射关系,ORM框架在运行时就能参照映射文件的信息,把对象持久化到数据库中。

ORM框架:为了解决面型对象与关系数据库存在的互不匹配的现象的框架。

当前ORM框架主要有五种:
(1)Hibernate 全自动 需要写hql语句
(2)iBATIS 半自动 自己写sql语句,可操作性强,小巧
(3)mybatis
(4)eclipseLink
(5)JFinal

2.为什么使用ORM?

当我们实现一个应用程序时(不使用O/R Mapping),我们可能会写特别多数据访问层的代码,从数据库保存、删除、读取对象信息,而这些代码都是重复的。而使用ORM则会大大减少重复性代码。对象关系映射(Object Relational Mapping,简称ORM),主要实现程序对象到关系数据库数据的映射。

3.对象-关系映射解释:

1.简单:ORM以最基本的形式建模数据。比如ORM会将MySQL的一张表映射成一个Java类(模型),表的字段就是这个类的成员变量
2.精确:ORM使所有的MySQL数据表都按照统一的标准精确地映射成java类,使系统在代码层面保持准确统一
3.易懂:ORM使数据库结构文档化。比如MySQL数据库就被ORM转换为了java程序员可以读懂的java类,java程序员可以只把注意力放在他擅长的java层面(当然能够熟练掌握MySQL更好)
4.易用:ORM包含对持久类对象进行CRUD操作的API,例如create(), update(), save(), load(), find(), find_all(), where()等,也就是讲sql查询全部封装成了编程语言中的函数,通过函数的链式组合生成最终的SQL语句。通过这种封装避免了不规范、冗余、风格不统一的SQL语句,可以避免很多人为Bug,方便编码风格的统一和后期维护。

4. ORM的优缺点:

优点:
1)提高开发效率,降低开发成本
2)使开发更加对象化
3)可移植
4)可以很方便地引入数据缓存之类的附加功能
缺点:
1)自动化进行关系数据库的映射需要消耗系统性能。其实这里的性能消耗还好啦,一般来说都可以忽略之。
2)在处理多表联查、where条件复杂之类的查询时,ORM的语法会变得复杂。

ORM框架介绍——什么是ORM框架?相关推荐

  1. html的css框架,介绍几款CSS框架

    什么是框架?框架是一种你能够使用在你的web项目中概念上的结构.CSS框架一般是CSS文件的集合,包括基本风格的字体排版,表单样式,表格布局等等,比如: ??? * typography.css 字体 ...

  2. fitnesse - 框架介绍

    fitnesse - 框架介绍 2017-09-29 目录: 1 fitnesse是什么? 2 框架介绍 3 与junit.testng比较,fitnesse教其他框架有什么优势 1 fitnesse ...

  3. Go gin web框架介绍

    gin框架介绍 一.gin框架介绍 gin是用go语言开发的一个web框架,简单易用,是一个轻量级框架. 二.为什么选择gin 1.运行响应非常快 2.快速开发 3.文档齐全 4.社区活跃 三.特性 ...

  4. opencv学习(part1)--OpenCv框架介绍

    学习笔记,仅供参考,有错必究 文章目录 opencv学习 OpenCv框架介绍 二值图像分析 二值图像定义与说明 图像二值化介绍 常见的二分类分割方法 opencv学习 OpenCv框架介绍 Open ...

  5. spring框架介绍_Spring框架介绍

    spring框架介绍 这是Spring框架和Spring核心概念的简介. 在本教程中,我们将介绍Spring Framework的主要优点和功能. 在随后的教程中,我们将学习有关Spring和Spri ...

  6. Linux驱动框架与杂项字符设备框架介绍

    1. Linux下驱动框架介绍 1.1 驱动框架分类 Linux下驱动框架分为3大类型: 字符设备 --------- 块设备 存储设备 SD 硬盘 网络设备 网卡 无线 有线 字符设备和块设备都会生 ...

  7. android驱动框架介绍

    android驱动框架介绍 了解android驱动框架: 1.方法1--jni调用底层驱动 在android框架中写入c/c++直接调用底层linux驱动,并向上提供jni接口给应用程序: 优点:简单 ...

  8. Spring - Java/J2EE Application Framework 应用框架 第 12 章 Web框架

    第 12 章 Web框架 12.1. Web框架介绍 Spring的web框架是围绕分发器(DispatcherServlet)设计的,DispatcherServlet将请求分发到不同的处理器,框架 ...

  9. Orm框架介绍和常见的Android Orm框架

    ORM(Object Relational Mapping)框架采用元数据来描述对象一关系映射细节,元数据一般采用XML格式,并且存放在专门的对象一映射文件中. 先介绍一下ORM的概念,以前也一直听说 ...

最新文章

  1. ICML 2021论文接收大排行!谷歌霸榜,国内北大第一、清华第二,华人学者表现亮眼.........
  2. ImageView 控制图片大小
  3. php定义枚举,PHP中Enum(枚举)用法实例详解
  4. C/C++ 笔试、面试题目大汇总
  5. Pytorch(一) --线性模型
  6. bzoj1458 士兵占领
  7. 解决打印机问题的方法
  8. excel随机数_excel怎样生成随机数
  9. [导入]MPQ 文件系统完成
  10. opencv-python将彩色图片变回灰色图片
  11. 中继器、集线器;网桥、交换机;路由器及网关之间的区别
  12. winsever 2008 r2 管理员账号没有权限_青少年禁毒知识竞赛2020 手机账号登录平台(官方入口)...
  13. 《图解HTTP》(四)更安全的HTTPS、用户认证
  14. 年轻的乔布斯也会哭泣
  15. Java--Mac系统安装JDK1.8及环境变量配置
  16. oracle routine是什么意思,routine是什么意思_routine的用法
  17. 免费的压缩 解压缩利器 Keka
  18. Java前后端分离项目生成二维码链接带中文参数遇到的问题及解决办法
  19. html---div和span标签的区别
  20. 什么是java 容器(container)?

热门文章

  1. 来自开源支持者的第一笔捐赠
  2. Vincent van Gogh
  3. Android连载之:第二章第三节:利用其他的开发环境和工具开发Android应用程序
  4. 为什么账龄分析的余额与应收款明细表对不上?如何分析?
  5. Python自动化操作Word15000字超强总结,帮你解放双手!(文末送书 )
  6. vue安装和开发环境搭建教程2021年
  7. 程序文件直接拷贝到pda设备 (USB连接pc pda wince6.0 C#)
  8. 机器如何识别花的种类
  9. 【Linux】Linux系统调用
  10. oop 类中定义 的函数_WordPress的高级OOP:自定义REST API端点