在 Spring Boot 中优雅地实现读写分离
一、读写分离介绍 {#一读写分离介绍} ------------------- 当使用Spring Boot开发数据库应用时,读写分离是一种常见的优化策略。读写分离将读操作和写操作分别分配给不同的数据库实例,以提高系统的吞吐量和性能。 读写分离实现主要是通过动态数据源功能实现的,动态数据源是一种通过在运行时动态切换数据库连接的机制。它允许应用程序根据不同的条件或配置选择不同...
51工具盒子
一、读写分离介绍 {#一读写分离介绍} ------------------- 当使用Spring Boot开发数据库应用时,读写分离是一种常见的优化策略。读写分离将读操作和写操作分别分配给不同的数据库实例,以提高系统的吞吐量和性能。 读写分离实现主要是通过动态数据源功能实现的,动态数据源是一种通过在运行时动态切换数据库连接的机制。它允许应用程序根据不同的条件或配置选择不同...
1、概览 {#1概览} ----------- 当有多个相同类型的实现时,需要对 Spring Bean 进行不同的命名。这是因为如果 Bean 没有唯一的名称,Spring 在注入 Bean 时会出现歧义。 通过控制 Bean 的命名,可以告诉 Spring 我们想将哪个 Bean 注入到目标对象中。 本文将带你了解 Spring Bean 命名策略,以及如何为同一类型...
1、概览 {#1概览} ----------- 安全通信在现代应用中发挥着重要作用。客户端和服务器之间通过普通 HTTP 进行的通信并不安全。对于生产级的应用,应该在应用中通过 TLS(传输层安全)协议启用 HTTPS。 本文将带你了解如何在 [Spring Boot](/spring-boot/) 应用中启用 TLS。 2、TLS 协议 {#2tls-协议} -----...
<h2>什么是精度丢失? {#什么是精度丢失}</h2> <p>Java 中长整形 <code>Long</code> (64位)的取值范围是:<code>-9223372036854775808</code> - <code>9223372036854775807</code...
1、概览 {#1概览} ----------- 本文将带你了解如何把 Spring Context 中的 Bean 设置为 null。在某些情况下,这可能很有用。例如,在测试时不想提供 Mock 对象。以及,在使用一些可选功能时,可能希望避免创建实现,并直接传递 null。 2、组件设置 {#2组件设置} --------------- 有几种方法可以将 Bean 设置为...
<h2>1、概览 {#1概览}</h2> <p>本文将带你了解如何通过 properties 文件控制 Spring Boot Actuator 端点的状态,以及如何保证端点的安全。</p> <h2>2、设置 {#2设置}</h2> <p>为了使用 Actuator,需要在 Maven 配置中包...
<p>跨域问题每个人都会遇到,特别是在前后端分离的系统中。</p> <p>如果你正在使用 Spring Boot 开发后端应用,并且浏览器中遇到了跨域问题。类似于如下:</p> <pre><code class="language-txt">Access to fetch at '...
1、简介 {#1简介} ----------- 以前在 Spring Boot 中配置 SSL 非常复杂,主要是证书有很多类型,如:JKS、PKCS #12 或 PEM。每种类型的配置方式又不一样。 幸运的是,Spring Boot 3.1 引入了 SSL Bundle,旨在简化 Spring Boot 中的 SSL 配置。在本教程中,我们将了解什么是 SSL Bundle...
<h2>1、简介 {#1简介}</h2> <p>本文将将会介绍在 Spring WebFlux 应用中出现 <code>DataBufferLimitException</code> 的原因,以及解决办法。</p> <h2>2、原因 {#2原因}</h2> <p>在讲解决...
在前后端分离架构大行其道的今天,模板引擎依然有着重要的地位和不可代替性。 [Freemarker](https://freemarker.apache.org/index.html) 是一款界开源的老牌模板引擎,使用 Java 开发,Spring 官方对 Freemarker 提供了支持。本文将会带你学习如何在 [Spring Boot](/spring-boot/) 中整合...