目录
JPA介绍
目前只做了解即可
一、JPA 是什么?
JPA 是 Java Persistence API 的缩写,是 Java 官方提供的一种 ORM 规范。
它的作用是把 Java 对象映射到数据库表中,实现对数据库的增删改查操作。
Spring Data JPA 是 Spring 框架提供的一种基于 JPA 规范的 ORM 框架。
它的作用是简化 JPA 的使用,提供了一套默认的实现,开发者只需要定义实体类和 Repository 接口,就可以实现数据库操作。
JPA 和 Spring Data JPA 是不同的概念。
JPA 是一种规范,而 Spring Data JPA 是基于 JPA 规范的实现。
二、Repository 是什么?
Repository 是 Spring Data JPA 提供的一种用于数据库操作的接口。
它的作用是定义数据库操作的方法,开发者只需要继承 Repository 接口,就可以实现数据库操作。
Repository 接口有很多种实现,比如 JpaRepository、CrudRepository 等。
每种实现都有不同的功能,开发者可以根据需要选择合适的实现。
举几个例子:
- JpaRepository:提供了 JPA 规范中定义的所有方法,包括分页、排序等。
- CrudRepository:提供了基本的 CRUD 方法,包括保存、删除、查询等。
- PagingAndSortingRepository:提供了分页和排序方法,包括 findAll、findAllByOrderBy 等。
三、Spring Data JPA 和 MyBatis 有什么区别?
Spring Data JPA 和 MyBatis 都是 ORM 框架,用于实现 Java 对象和数据库表的映射。
它们的区别在于:
- Spring Data JPA 是基于 JPA 规范的实现,而 MyBatis 是基于 XML 配置文件的实现。
- Spring Data JPA 提供了一套默认的实现,开发者只需要定义实体类和 Repository 接口,就可以实现数据库操作。而 MyBatis 则需要开发者自己编写 SQL 语句。
- Spring Data JPA 支持分页、排序等功能,而 MyBatis 则需要开发者自己实现。
行者常至,为者常成!