posts

《Spring Boot 实战》 · 全书目录与章节索引(55 篇)

《Spring Boot 实战》全 55 篇,面向已会用 Spring Boot、准备独立交付生产服务的工程师:从多模块工程结构、依赖治理、配置密钥与测试体系讲起,覆盖 REST 设计、数据访问、API 契约、缓存、认证授权、异步消息,再到连接池、事务并发、调度批处理、文件与对象存储,最后落到容器化部署、可观测性、性能调优与一次完整的生产级交付。本页给出全书分章目录。

《Spring Boot 实战》全 55 篇,是一套面向「已会用 Spring Boot、但没独立交付过生产服务」的工程师的实战书:从工程基建讲到能把服务交付上线,示例围绕同一个「图书借阅服务」演进,基于 Spring Boot 4.1.1 + Java 21 实跑。

本页是《Spring Boot 实战》的全书目录:按章节顺序列出全部 55 篇,点击标题直达正文。也可以从各节末尾的「阅读导航」按顺序通读,或先看目录篇 里的三条学习路径与十周计划。

全书概览

项目内容
书稿《Spring Boot 实战》
篇数55 篇(正文 18 章 54 节 + 目录篇)
领域Spring Boot 4.x 生产级工程实践与服务交付
阅读方式从目录篇 进入按顺序通读,或按痛点跳读
实测版本Spring Boot 4.1.1(Spring Framework 7.0.9)+ Java 21.0.12.1 + Maven 3.9.12
对照版本Spring Boot 3.5.16(Spring Framework 6.2.19),差异处单独标注
上级专题书稿专题

全书目录

前置:目录

节文章核心内容
—目录与学习路径全书导航页:读者定位、三条学习路径与十周计划、四个部分的依赖关系与 54 节逐节索引

第一部分:工程基建(第 1–4 章)

节文章核心内容
1.11.1 何时该拆模块给出「单体还是多模块」的可操作判据,以及三种拆分粒度各自要付的代价
1.21.2 父子 POM 与依赖管理分清 parent 继承与 dependencyManagement 的职责,写出能构建的三模块骨架
1.31.3 分层与包结构约定按功能与按层分包的取舍,并用 ArchUnit 把「禁止循环依赖」变成会失败的测试
2.12.1 依赖冲突排查把「运行时才炸」的冲突还原成依赖树路径,给出三种修复各自的适用边界
2.22.2 版本对齐与 BOM分清 starter-parent 与 spring-boot-dependencies,用 import scope 的 BOM 收拢版本
2.32.3 构建加速与缓存先量出构建慢在哪一段,再用六类手段压时间,并说清 4.1 -DskipTests 的语义变化
3.13.1 多环境配置策略把「环境」拆成正交维度,用 profile group 组合激活策略,划清三层配置的职责
3.23.2 敏感信息与密钥管理看清口令从哪几处漏出,划清配置加密与外部密钥管理的边界与密钥轮换影响
3.33.3 配置中心接入判断什么规模才值得上配置中心,给出动态刷新「哪些能刷、哪些刷不动」的边界
4.14.1 测试分层策略把四层测试的成本与收益摊开算账,给出可落地的配比与 CI 分层命令
4.24.2 Testcontainers 真实依赖说清内嵌数据库会掩盖什么,给出 Testcontainers 2.0 的坐标与共享容器策略
4.34.3 契约测试与数据隔离划清契约测试与集成测试的边界,把数据隔离三策略的代价讲透

第二部分:Web 后端工程(第 5–10 章)

节文章核心内容
5.15.1 资源建模与路由把动作式接口重写成资源式接口,定下 URL 层级、方法与状态码语义
5.25.2 分页、过滤与排序Page 与 Slice 的取舍、count 查询的代价、keyset 分页与排序字段白名单
5.35.3 幂等与并发控制让写接口在超时重试、重复点击、并发提交下不产生重复数据
6.16.1 Repository 分层与 DTO 转换说清实体为什么不能直接进接口层,给出投影选型与转换代码该放哪一层
6.26.2 复杂查询的三种写法讲清派生查询的失效边界、@Query 的 JPQL/native 取舍与 Querydsl 的动态条件
6.36.3 N+1 与抓取策略看懂 N+1 在 SQL 日志里的形态,给出三种抓取策略的适用与代价
7.17.1 OpenAPI 与 SpringDoc把接口变成机器可读的 OpenAPI 文档,讲清注解与推断的边界、生产该不该开
7.27.2 契约先行与代码生成把 OpenAPI 从「代码的产物」变成「代码的输入」,并在 CI 里固定契约校验
7.37.3 版本演进与兼容性何时才该引入版本、三种版本载体怎么选、4.x 内置 API Versioning 怎么配
8.18.1 Spring Cache 抽象把缓存声明式地加到服务上,讲清注解抽象能表达什么、不能表达什么
8.28.2 Redis 缓存实践序列化、连接方式与键命名,以及大 key 与热 key 两类线上事故的成因与对策
8.38.3 缓存一致性读写顺序怎么定、延迟双删与 binlog 订阅换来什么、三种缓存故障怎么防
9.19.1 Spring Security 配置模型为什么是 SecurityFilterChain bean、过滤器链顺序、401 与 403 各由谁负责
9.29.2 JWT 无状态认证判断该不该上无状态 JWT、选对签名算法,并正确处理刷新、轮换与 kid
9.39.3 方法级授权与多租户把授权从 URL 层下沉到方法层,设计多分馆租户隔离与上下文传播
10.110.1 @Async 与线程池@Async 的代理前提、默认执行器为什么危险、自定义线程池与上下文传递
10.210.2 消息队列集成Spring Kafka 生产端与消费端配置、位点提交模式,并对照 RabbitMQ 说清选型
10.310.3 可靠投递与幂等消费生产端怎么保证不丢、消费端怎么在重复投递下不出错、失败的消息去哪

第三部分:数据与集成(第 11–14 章)

节文章核心内容
11.111.1 HikariCP 调优maximum-pool-size 的推导方法、连接泄漏排查,区分「池不够」与「SQL 慢」
11.211.2 读写分离AbstractRoutingDataSource 的路由实现,理解事务内切换数据源为何无效
11.311.3 分库分表的接入边界建立「什么时候才该分库分表」的判断力,掌握分片键与跨片查询的边界
12.112.1 事务边界设计@Transactional 该落在哪一层、自调用为何失效、事务里哪些事绝对不能做
12.212.2 乐观锁与悲观锁乐观锁的失败与重试、悲观锁的写法与代价、加锁顺序对死锁的影响
12.312.3 分布式事务的取舍分清 2PC/TCC/Saga/本地消息表各自的边界,并落地本地消息表加轮询补偿
13.113.1 调度方案选型吃透 @Scheduled 的真实语义与坑,再决定要不要上 Quartz 或调度中心
13.213.2 Spring Batch 实战Job/Step/chunk 模型、chunk 与事务边界的关系,以及 6.0 的包结构重组
13.313.3 分布式调度与幂等解决 @Scheduled 在多实例下的重复执行问题,让任务「重复跑也安全」
14.114.1 上传下载与大文件multipart 与容器限制、延迟解析、流式读写、文件名安全与下载响应头
14.214.2 对象存储集成用 S3Client 上传下载、用 S3Presigner 签发直传 URL,把对象键设计好
14.314.3 断点续传与直传用分片上传实现断点续传、用预签名 URL 让客户端绕过应用服务器

第四部分:交付与运行(第 15–18 章)

节文章核心内容
15.115.1 镜像构建与分层分层顺序、jarmode=tools 提取、基础镜像与非 root 运行的取舍
15.215.2 Kubernetes 部署要点资源与 JVM 内存、三种探针、配置注入、无状态与滚动更新这几组易错字段
15.315.3 健康检查与优雅停机健康端点分组、可用性状态机与容器停机时序串成一条完整链路
16.116.1 Actuator 与指标端点暴露与鉴权策略、Micrometer 的指标模型,并让 Prometheus 真正算出 P99
16.216.2 链路追踪从入口到数据库、下游 HTTP、消息队列的完整调用链,采样率与传播格式的取舍
16.316.3 日志聚合与告警把日志变成可查询的结构化字段,建立「指标决定要不要叫人、日志回答为什么」的心智模型
17.117.1 性能剖析方法建立「先测量再优化」的工作流,用 JFR、async-profiler 把瓶颈钉到具体代码行
17.217.2 压测与容量评估设计贴近真实的场景与数据、分离压测机与被测机,用实测 QPS 倒推实例数
17.317.3 JVM 参数与运行时调优堆大小与容器感知、OOM 现场、G1 取舍与何时上 ZGC,统一 GC 日志
18.118.1 需求与架构把功能与非功能需求翻译成一组可评审的架构决策记录,附容量预算
18.218.2 实现与联调分层骨架、跨模块契约、并发与异步的关键写法,以及可复现的联调流程
18.318.3 上线、观测与回滚上线检查清单、灰度与分批发布、基于 SLO 的告警阈值与四类回滚的取舍

怎么用这份索引

相关阅读

全部文章 Game Golang SaaS Rust Python Java 游戏开发 客户端开发 GameDev TypeScript