在主流 ORM 框架(Hibernate、Mybatis)的文章。
1. ORM
1.1 What
对象关系映射( Object Relational Mapping,简称 ORM ),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。
1.2 Why
在原来 Java 对数据库的访问是通过 JDBC(Java Database Connectivity),JDBC 提供了一组 Java API 来访问数据库。使用 JDBC 开发应用程序的优缺点如下:
JDBC 的优点 JDBC 的缺点
干净整洁的 SQL 处理 大项目中使用很复杂
大数据下有良好的性能 很大的编程成本
对于小应用非常好 没有封装
易学的简易语法 难以实现 MVC 的概念
针对 JDBC 存在的缺点,一些厂商开发了 ORM 框架来弥补。比如:Hibernate、iBatis(MyBatis)、openJDK等。使用 ORM 的优点如下:
序号 优点
1 一个 API 来在持久类的对象上实现基本的 CRUD 操作
2 一个语言或 API 来指定引用类和属性的查询
3 一个可配置的服务用来指定映射元数据
4 一个技术和事务对象交互来执行 dirty checking, lazy association fetching 和其它优化的功能
但是现在也出现了一个问题, ORM 框架这么多,大家各自搞自己的,没有一个统一的规范。所以 JPA 就出现了。
网友评论