
JPA、Hibernate 和 Spring Data JPA 中的数据库审计
1、概览 {#1概览} ----------- 就 ORM 而言,数据库审计指的是跟踪和记录与实体相关的事件,或者简单地说是实体版本管理。受 SQL 触发器的启发,这些事件是对实体的插入、更新和删除操作。数据库审计的好处类似于源代码版本控制。 本文将带你了解在应用中使用审计的三种方法。首先介绍来自于 JPA 标准的审计实现、然后再介绍由 Hibernate 和 Spring...
1、概览 {#1概览} ----------- 就 ORM 而言,数据库审计指的是跟踪和记录与实体相关的事件,或者简单地说是实体版本管理。受 SQL 触发器的启发,这些事件是对实体的插入、更新和删除操作。数据库审计的好处类似于源代码版本控制。 本文将带你了解在应用中使用审计的三种方法。首先介绍来自于 JPA 标准的审计实现、然后再介绍由 Hibernate 和 Spring...
<p>Spring Boot v3.3.2 正式发布。</p> <h2>? Bug 修复 {#-bug-修复}</h2> <ul> <li>没有在 Spring Integration 6.2 中引入的 <code>defaultTimeout</code> 设置的配置属性 <...
<h2>1、简介 {#1简介}</h2> <p>本文将带你了解如何使用 <a href="/spring-data-jpa/">Spring Data JPA</a> 在 MongoDB 中创建具有多个 <code>Criteria</code>(条件)的查询。</p&...
1、简介 {#1简介} ----------- 本文将带你了解如何在 Spring Boot 中自动装配具有多个实现的接口,以及一些常见用例。这是一个强大的功能,允许开发人员动态地将接口的不同实现注入到组件中。 2、默认行为 {#2默认行为} --------------- 默认情况下,当接口存在多个实现并试图将该接口自动装配到组件中时,会遇到异常:"requi...
<h2>一、循环依赖 {#一循环依赖}</h2> <h3>1.1、什么是循环依赖 {#11什么是循环依赖}</h3> <p>首先,什么是循环依赖?这个其实好理解,就是两个 Bean 互相依赖,类似下面这样:</p> <pre><code class="language-java&...
<h2>1、概览 {#1概览}</h2> <p>在使用 <a href="/spring-data-jpa/">Spring Data JPA</a> 构建持久层时,经常要处理带有枚举字段的实体。这些枚举字段代表一组固定的常量,例如订单的状态、用户的角色或业务的某个阶段。</p> <...
1、简介 {#1简介} ----------- 本文将带你了解如何在 *OAuth 2.0* 公开客户端(Public Client)中使用 Proof Key for Code Exchange (代码交换证明密钥,PKCE)。 2、背景 {#2背景} ----------- OAuth 2.0 公开客户端(如 SPA 单页应用,或使用授权码授权的移动应用)很容易受到授...
<p>在 Spring Boot + Thyemleaf 的应用中,我们可以使用 <a href="https://github.com/ultraq/thymeleaf-layout-dialect">thymeleaf-layout-dialect</a> 来定义网页的通用布局,效果很好。</p> <...
本文主要介绍以下内容: * 嵌入式模型简介。 * 使用 `DocumentReader` 加载数据。 * 在 `VectorStore` 中存储 *Embedding*。 * 实现 RAG(Retrieval-Augmented Generation,检索增强生成),又名 *Prompt Stuffing*。 你可以在 [GitHub](https://github.com...
1、概览 {#1概览} ----------- 尽管标准的 REST API 可以满足大多数常见需求,但在处理批量(Bulk)或批处理(Batch)操作时,基于 REST 的架构风格存在一些限制。 本文将带你了解如何在微服务中应用 Bulk 和 Batch 操作,以及如何实现一些自定义的面向 "写" 的 Bulk 和 Batch API。 2、 Bul...