跳到主要内容

Spring Boot 3.x Data(七)-Spring Data JDBC开发指南

系列文章目录

系列文章:Spring Boot 3.x 系列教程


文章目录

  • 系列文章目录
  • 前言
  • 一、DDD和关系型数据库
  • 二、快速开始
    • 1.数据准备
  • 2.新建Spring Boot项目引入依赖
  • 3.创建聚合对象
  • 4.创建Repository
  • 5.配置激活
  • 6.测试
  • 三、持久化实体
    • 对象映射原理
    • 对象创建
    • 属性值填充
    • 属性覆盖
  • 实体中支持的类型
  • 自定义表名
  • 自定义列名
  • 嵌入式实体
  • 实体状态检测策略
  • ID生成
  • 乐观锁机制
  • 四、生命周期事件
  • 五、 Entity Callbacks
    • 实现 Entity Callbacks
  • 注册Entity Callbacks
  • 可用的EntityCallback
  • 自定义类型转换
    • 注册Spring Converter写属性
  • 通过转换器读取属性
  • 用JdbcConverter注册Spring converter
  • JdbcValue
  • Converter歧义
  • 六、日志
  • 七、 事物
    • 事物Query方法
  • 八、 审计
    • 基于注解的审计元数据
  • 基于接口的审计元数据
    • AuditorAware
    • ReactiveAuditorAware
  • JDBC 审计
  • 九、 JDBC锁

前言

Java世界中用于关系数据库的主要持久性API当然是JPA,它有自己的Spring Data模块。为什么会有另一个?
JPA做了很多事情来帮助开发人员。此外,它还可以跟踪实体的变化。 它为你做了懒加载加载。它允许你将广泛的对象构造映射到同样广泛的数据库设计。

这非常好,让很多事情变得很简单。只需看一看基本的JPA教程。但是,为什么JPA要做某件事情,这常常让人感到困惑。此外,使用JPA,概念上非常简单的事情变得相当困难。

通过包含以下设计决策,Spring Data JDBC的目标是在概念上更简单:

  • 如果加载一个实体,就会运行SQL语句。完成此操作后,你将拥有一个完全加载的实体。没有懒加载加载或缓存完成。