51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

gradle

Hibernate 和 Spring Data JPA 中的 N+1 问题

Hibernate 和 Spring Data JPA 中的 N+1 问题

厉飞雨 阅读(11) 评论(0) 赞(4)

1、概览 {#1概览} ----------- [Spring JPA](/spring-data-jpa/) 和 Hibernate 为无缝数据库通信提供了强大的工具。不过,由于客户端将更多控制权委托给了框架,因此生成的查询可能远非最佳。 本文将带你了解使用 Spring JPA 和 Hibernate 时常见的 *N+1* 问题,以及可能导致该问题的不同情况。 2、社...

在 Spring Batch 中访问 JobParameter

在 Spring Batch 中访问 JobParameter

厉飞雨 阅读(11) 评论(0) 赞(2)

1、概览 {#1概览} ----------- [Spring Batch](/spring-batch/) 是一个强大的 Java 批处理框架,因此在数据处理活动和定时任务运行中被广泛选择。根据业务逻辑的复杂程度,作业可以依赖不同的配置值和动态参数。 本文将带你了解如何使用 `JobParameter` 以及如何从基本的批处理组件中访问它们。 2、Demo 项目 {#2...

在 Kubernetes 上实现 Spring Boot SSL 热重载

在 Kubernetes 上实现 Spring Boot SSL 热重载

厉飞雨 阅读(10) 评论(0) 赞(3)

本文将带你了解如何为在 Kubernetes 上运行的 [Spring Boot](/spring-boot/) 应用配置 SSL 证书的热重载。我们将使用 Spring Boot 3.1 和 3.2 版本中引入的两个功能。第一个功能允许我们利用 [SSL Bundle](/spring-boot-security-ssl-bundles/) 在服务器端和客户端配置和使用自定义...

Spring Data JPA 使用 findby 定义多个条件列

Spring Data JPA 使用 findby 定义多个条件列

厉飞雨 阅读(10) 评论(0) 赞(1)

1、简介 {#1简介} ----------- [Spring Data JPA](/spring-data-jpa/) 提供了查询推导功能(派生查询),只需遵循方法名称约定就能自动推导出查询。 本文将带你了解如何使用查询推到功能,通过一列或多列查找实体。 2、设置 {#2设置} ----------- 定义一个 `Account` 实体,其中包含与用户账户相关的属性:...

在 Spring Boot 中使用 JPA 调用自定义数据库函数

在 Spring Boot 中使用 JPA 调用自定义数据库函数

厉飞雨 阅读(11) 评论(0) 赞(2)

1、概览 {#1概览} ----------- 数据库函数是数据库管理系统的重要组成部分,可将逻辑和执行封装在数据库中。它们有助于高效的数据处理和操作。 本文将带你了解在 Spring Boot 应用中使用 Spring Data JPA 调用自定义数据库函数的各种方法。 2、项目设置 {#2项目设置} --------------- 为了简单,本文使用 H2 数据库。...

Spring Data Jpa 中的 Query Hint

Spring Data Jpa 中的 Query Hint

厉飞雨 阅读(12) 评论(0) 赞(2)

1、简介 {#1简介} ----------- 本文将带你了解 [Spring Data JPA](/spring-data-jpa/) 中 Query Hint (查询提示)的功能、基本原理以及如何有效地应用它们。 这些提示有助于优化数据库查询,并通过影响优化器的决策过程来改善应用性能。 2、理解 Query Hint {#2理解-query-hint} -------...

Spring Data JPA Repository 和数据库视图

Spring Data JPA Repository 和数据库视图

厉飞雨 阅读(14) 评论(0) 赞(3)

1、概览 {#1概览} ----------- 数据库视图(Database View)是关系型数据库系统中的一种类似表的结构,其中的数据源来自一个或多个连接在一起的表。 Spring Data Repository 通常用于数据库表,但也可以有效地应用于数据库视图。本文将带你了解如何在 Spring Data JPA 中使用 Repository 从数据库视图检索数据。 ...

Spring Data JPA 执行 INSERT 时跳过 SELECT

Spring Data JPA 执行 INSERT 时跳过 SELECT

厉飞雨 阅读(12) 评论(0) 赞(2)

1、概览 {#1概览} ----------- 在某些情况下,当使用 [Spring Data JPA](/spring-data-jpa/) Repository 保存实体时,可能会在日志中遇到额外的 `SELECT`。这可能会因大量额外调用而导致性能问题。 本文将带你了解如何在 Spring Data JPA 中执行 `INSERT` 时跳过 `SELECT`,以提高性...

使用 JUnit 和 @DataJpaTest 测试 Spring Data Repository

使用 JUnit 和 @DataJpaTest 测试 Spring Data Repository

厉飞雨 阅读(11) 评论(0) 赞(2)

1、简介 {#1简介} ----------- 在使用 [Spring Data JPA](/spring-data-jpa/) 进行数据持久化的 Spring Boot 应用中,测试与数据库交互的 Repository 至关重要。 本文将带你了解如何使用 Spring Boot 提供的 `@DataJpaTest` 注解和 JUnit 对 Spring Data JPA ...

从 Spring Security 5 迁移到 Spring Security 6/Spring Boot 3

从 Spring Security 5 迁移到 Spring Security 6/Spring Boot 3

厉飞雨 阅读(10) 评论(0) 赞(4)

1、概览 {#1概览} ----------- [Spring Security 6](/spring-security/) 有几处重大变化,包括删除了一些类和已废弃的方法,并引入了一些新方法。 从 Spring Security 5 迁移到 Spring Security 6 可以在不破坏现有代码的情况下逐步完成。此外,还可以使用 [OpenRewrite](https:...