
为什么 JPA Entity 类需要有默认的无参构造函数?
<h2>1、概览 {#1概览}</h2> <p>在本教程中,我们将学习在 JPA 中,为什么实体类必须要有默认无参数构造函数?</p> <p>为了理解无参数构造函数的意义,我们将使用一个简单的 <code>Employee</code> 实体示例。我们将观察缺少默认构造函数是如何导致编译时错误的...
<h2>1、概览 {#1概览}</h2> <p>在本教程中,我们将学习在 JPA 中,为什么实体类必须要有默认无参数构造函数?</p> <p>为了理解无参数构造函数的意义,我们将使用一个简单的 <code>Employee</code> 实体示例。我们将观察缺少默认构造函数是如何导致编译时错误的...
<h2>1、概览 {#1概览}</h2> <p>缓存数据意味着我们的应用无需访问速度较慢的存储层,从而提高了性能和响应速度。我们可以使用任何内存实现库(如 <a href="https://www.baeldung.com/java-caching-caffeine">Caffeine</a>)来实...
<h2>1、概览 {#1概览}</h2> <p>本文将带你了解如何根据自定义属性动态注册 Bean。</p> <p>主要是学习 <code>BeanDefinitionRegistryPostProcessor</code> 接口,以及如何使用它将 Bean 添加到 Application Co...
<h2>1、概览 {#1概览}</h2> <p>本文将带你了解如何在 Spring 中使用运行时参数创建一个 Prototype Scope Bean。</p> <p>在 Spring 中,有许多不同的 Bean Scope,默认的 Scope 是 Singleton(单例)。Singleton Scope 的 Bea...
<p>本文将带你了解什么是虚拟线程、虚拟线程是如何提高应用吞吐量的,以及如何为 Spring Boot 应用启用虚拟线程。</p> <h2>并发编程的演化 {#并发编程的演化}</h2> <h3>线程 {#线程}</h3> <p>总所周知,线程(Thread)是计算机中的最小执行单元,由操作系统...
<h2>⚠️ 注意 {#-注意}</h2> <p>此版本升级到 Hibernate 6.4.4.Final。虽然它包含了许多有价值的错误修复,但在原生镜像(Native Image)中无法正常工作。如果你正在使用 <em>GraalVM</em> ,则应在 <code>pom.xml</code>...
<h2>1、概览 {#1概览}</h2> <p>本文将带你全面了解如何使用 <a href="/spring-data-jpa/">Spring Data JPA</a> 在 PostgreSQL <em>JSONB</em> 列中存储、检索 <em>JSON&l...
<h2>1、概览 {#1概览}</h2> <p>Aspect-Oriented Programming(面向切面编程,简称 AOP)是一种范式,它能让我们在整个应用中隔离事务管理或日志记录等交叉问题,而不会干扰业务逻辑。</p> <p>本文将带你了解如何在 <a href="/spring/"...
<h2>1、概览 {#1概览}</h2> <p><a href="/spring-data-jpa/">Spring JPA</a> 和 Hibernate 为无缝数据库通信提供了强大的工具。不过,由于客户端将更多控制权委托给了框架,因此生成的查询可能远非最佳。</p> <p>...
<p>本文将带你了解如何为在 Kubernetes 上运行的 <a href="/spring-boot/">Spring Boot</a> 应用配置 SSL 证书的热重载。我们将使用 Spring Boot 3.1 和 3.2 版本中引入的两个功能。第一个功能允许我们利用 <a href="/spring...