Spring Boot 与 Gzip 压缩
响应压缩是 Web 应用一种常见的优化手段,通过压缩算法减小传输数据的体积,提高传输效率、节约带宽。客户端接收到数据后,使用相同的算法对数据进行解压从而获取到原始数据。 客户端和服务器需要通过 Header 来协商双方支持的压缩算法。 * `Accept-Encoding`:请求头,告诉服务器客户端支持的压缩算法(多个使用逗号分割)。例如:`Accept-Encoding:...
51工具盒子
响应压缩是 Web 应用一种常见的优化手段,通过压缩算法减小传输数据的体积,提高传输效率、节约带宽。客户端接收到数据后,使用相同的算法对数据进行解压从而获取到原始数据。 客户端和服务器需要通过 Header 来协商双方支持的压缩算法。 * `Accept-Encoding`:请求头,告诉服务器客户端支持的压缩算法(多个使用逗号分割)。例如:`Accept-Encoding:...
<p>本文将带你了解如何使用 <a href="/spring-boot/">Spring Boot</a> 和 Open Telemetry 为 Kafka 生产者和消费者配置追踪功能。我们会使用 Micrometer 库发送追踪信息,并使用Jaeger来存储和可视化这些数据。Spring Kafka内置了与 Micro...
<h2>Spring Framework 6.1 中的新变化 {#spring-framework-61-中的新变化}</h2> <h3>核心容器 {#核心容器}</h3> <ul> <li>总体上 <a href="https://github.com/spring-projects/sp...
1、概览 {#1概览} ----------- 在 Spring 集成测试中,我们可能想要覆盖应用的一些 Bean。通常,可以使用专门为测试定义的 Spring Bean 来实现。然而,在 Spring Context 中提供多个具有相同名称的 Bean,可能会遇到 `BeanDefinitionOverrideException` 异常。 本文将带你了解如何在 Sprin...
<h2>1、概览 {#1概览}</h2> <p>本文将带你了解如何在 <a href="/spring/">Spring</a> 应用中使用 Thymeleaf 模板来渲染错误信息。</p> <p>我们会通过一个简单的 Spring Boot 项目来进行演示,该项目是一个 &...
一、读写分离介绍 {#一读写分离介绍} ------------------- 当使用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 设置为...