知识卡片

JPA与Hibernate的规范实现关系

专业/工作 · 619.a

内容

JPA(Java Persistence API)是一套ORM规范,只定义接口和行为约定,本身不提供可运行的实现;Hibernate则是这套规范的一个具体实现,就像JDBC Driver之于JDBC接口的关系——JDBC定义了怎么和数据库打交道的统一接口,不同数据库厂商各自提供符合这个接口的Driver。理解”规范”与”实现”分离的设计,能解释为什么代码里写的是JPA的接口(如Repository),而运行时背后可以换成不同的ORM实现而不必改动业务代码。发散:这种”面向标准接口编程,实现可插拔”的模式,在Java生态里反复出现(JDBC、Servlet、SLF4J 等),是理解Java框架分层设计的一把通用钥匙。

参考来源

《Spring Boot应用开发实战》第2章《使用Spring Boot构建Web应用程序》