ORM框架详解(6大常用ORM框架)

ORM框架详解(6大常用ORM框架)-mikechen

什么是ORM框架

ORM,英文全称是Object-Relational Mapping,ORM框架用于简化关系型数据库和面向对象编程语言(如Java)之间的数据映射和交互。

 

ORM框架的作用

ORM框架的作用,主要包括以下几个方面:

1.数据映射ORM

框架将数据库中的数据映射到编程语言中的对象模型,每个数据库表通常对应于一个对象类,每个表中的行对应于对象模型中的对象实例。

2.数据持久性

ORM框架负责管理对象的生命周期,包括:创建、更新和删除操作。

查询语言:ORM框架提供高级查询语言,使开发人员能够以面向对象的方式执行数据库查询,而不必编写复杂的SQL查询语句。这简化了数据检索和过滤。

3.提高开发效率

ORM框架简化了数据库操作,减少了手动编写SQL查询语句和数据访问层代码的工作量,提高了开发人员的生产力。

 

ORM框架有哪些

1.Hibernate

Hibernate是一个广泛使用的Java ORM框架,它提供了强大的对象-关系映射功能,支持各种数据库。

Hibernate允许开发人员将Java对象映射到数据库表,简化了数据库访问和数据持久化。

Hibernate核心组件,如下图所示:

ORM框架详解(6大常用ORM框架)-mikechen

1.hibernate.cfg.xml

hibernate.cfg.xml主要用于:配置数据库连接、事务管理、Hibernate 本身的配置信息。

 

2.xxx.hbm.xml

类名.hbm.xml就是系统中每一个类与其对应的数据库表之间的关联信息。

如下User表所示:

ORM框架详解(6大常用ORM框架)-mikechen

3.HQL

它提供了多种查询语言,如HQL,也就是Hibernate Query Language,以便进行高级查询和过滤。

 

Mybatis

MyBatis是一个轻量级的Java ORM框架,它使用XML或注解来配置SQL映射关系。

MyBatis提供了更细粒度的SQL控制,使开发人员能够更直接地编写和优化SQL查询。

MyBatis原理如下图所示 :

ORM框架详解(6大常用ORM框架)-mikechen

MyBatis通过Mapper接口和XML映射文件定义SQL查询,开发人员可以自由控制SQL查询的编写和执行。

 

3.JPA (Java Persistence API)

JPA是Java EE标准的一部分,定义了一套用于对象-关系映射的API。

开发人员可以使用JPA与各种ORM框架集成,如Hibernate、EclipseLink和OpenJPA。

JPA提供了一种标准的方式来操作数据库,使得应用程序更具可移植性。

 

4.Spring Data JPA

Spring Data JPA是Spring框架的一部分,它简化了使用JPA进行数据库操作的过程。

它提供了一种简单的方式来创建数据访问层,包括自动生成基本的CRUD操作,同时支持自定义查询方法。

 

5.EclipseLink

EclipseLink是一种用于JPA的强大ORM框架,它是Eclipse基金会的一部分。

它支持高级的对象-关系映射、性能优化和缓存管理,EclipseLink还提供了JPA实现的参考实现。

 

6.Apache OpenJPA

OpenJPA是Apache基金会的一个项目,它提供了一个用于JPA的ORM实现。

它支持JPA标准,包括对象持久性、查询和事务处理。

mikechen

mikechen睿哥,10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

关注「mikechen」公众号,获取更多技术干货!

后台回复架构即可获取《阿里架构师进阶专题全部合集》,后台回复面试即可获取《史上最全阿里Java面试题总结

评论交流
    说说你的看法