本章目标
整合 SpringBootJPA,实现对 mysql 数据库表的增删查改操作。
操作步骤
初始化数据库
在 mysql 的 test 库中创建表 user,脚本如下,其中主键设置为自动增长。
添加依赖
引入 Spring Boot Starter 父工程
引入 `spring-boot-starter-web`、`spring-boot-starter-data-jpa`、`mysql` 的依赖
配置
SpringBoot 默认使用 application.properties(或者 application.yml)作为项目配置文件,本课程使用 application.yml。
在 src/main/resources 目录下添加 application.yml 文件。
配置数据源及 JPA 相关配置
编码
1. 编写实体类 User
- - 类上添加注解 @Entity
- - 主键添加注解 @Id
- - 主键自增添加注解 @GeneratedValue
- - 日期格式添加注解 @DateTimeFormat(pattern = "yyyy-MM-dd"),用于定义前端入参格式
2. 编写 Repository 类
JPA 提供的 JpaRepository 接口已经实现了对单表的增删查改操作以及一些其它常用的方法。
创建接口 UserRepository,继承 JpaRepository 接口,内容如下
3. 编写 Controller 接口
创建 controller 类,实现增删查改交换接口
验证结果
因为本章内容需要使用 post 提交方式,故不能在地址栏简单地输入地址进行请求,建议使用 postman 进行操作。
源码地址
本章源码 : https://github.com/caiyuanzi-song/boot.git
总结
JPA 底层使用的是 Hibernate 框架,已经封装了对单表的各种操作,只需要实现 JpaRepository 接口即可以获得对当前表的各种操作方法,这使得使用 JPA 进行数据库的 CURD 操作变得非常简单。