JPA 概述

JPA,Java Persistence API,是一套 Java 持久化规范。

一、什么是 JPA ?

1. 什么是 JDBC ?

JDBC 是一套接口,描述了 Java 程序对数据库的访问方法。

数据库厂商实现 JDBC 接口,使得程序员可以通过 JDBC 接口访问任意数据库。

因此,JDBC 是一套规范,规定了程序应该如何访问数据库。

2. 什么是 JPA ?

JPA,Java Persistence API,是一套 Java 持久化规范。

JPA 是一套规范,规定了对象和持久层之间应该如何映射。

二、Spring Boot JPA

Spring Boot JPA 是 Spring 基于 ORM 框架、JPA 规范的基础上封装的一套 JPA 应用框架,可使开发者用极简的代码即可实现对数据的访问和操作。

三、JPA 与 MyBatis

  • JPA 国外用得多;

    MyBatis 国内用得少

  • JPA 在简单操作时更加方便,支持通过方法名自动匹配 SQL;

    MyBatis 每个方法都需要手写,更加麻烦

  • JPA 在多表联查、动态 SQL 等负责操作时,不够方便、Java 代码与 SQL 代码耦合;

    Mybatis 在多表联查、动态 SQL 时更加友好

四、JPA 的好处

  • 维护方便,当 “对象” 的属性需要改动时,程序员无需再重复修改实体类、SQL 代码、数据表结构,只需要修改实体类后由 JPA 框架自动进行 SQL 和数据表的变更

  • 开发重心由数据库转移至 Java 代码

    在以往的开发中,往往需要先建立数据库,再根据数据库建立实体类、Mapper、编写业务代码;

    在使用 JPA 框架的开发中,只需要编写实体类,由 JPA 框架自行完成实体和数据表之间的映射即可

  • 开发更加简单

参考