输入标题、正文或标签,查找知识。

最近文档

软件工程 / 构建发布与运行构建环境与持续集成:为什么你电脑上能跑还不够你把收藏功能交给同事,他安装以后却打不开。原来你电脑用的是一个 Node 版本,他用另一个;你本地还有没提交的文件。要交付软件,不只需要源代码,还要让别人按照明确步骤得到能运行的结果。软件工程 / 构建发布与运行部署、发布、回滚与观察:把功能交到用户手里代码已经合并,收藏按钮却没出现在网站上。或者网站更新了,点击时提示找不到数据表。交付涉及代码、配置、数据和流量,不能只用“构建成功”判断完成。本章按一次小发布看这些环节怎样配合。语言基础 / TypeScript跨语言对照TypeScript 独有能力与缺失能力清单这一章适合在学完基础后回查:某个能力是 TypeScript 自己提供的,还是来自 JavaScript、浏览器、Node 或第三方库?先把来源认清,再讨论它擅长什么、缺少什么,就不会把“语言没有内置”误解成“整个生态都做不到”。语言基础语言基础学习路线:以 TypeScript 建立可迁移的编程模型学 TypeScript 时,你会同时遇到 JavaScript 的运行规则和 TypeScript 的类型规则。先把这两件事分清,很多报错就好理解了。按顺序做完前面的练习,再读跨语言对照;对照章节用于解释差异,不要求你同时学会五门语言。后端知识 / 身份权限与安全认证、授权与多租户:登录成功只是第一步用户把地址里的订单号从 42 改成 43,居然看到了别人订单。这不是登录失效,而是资源授权缺失。后端要分别确认调用者是谁,以及这个调用者是否能对这份数据执行当前操作。
1 / 5 · 构建环境与持续集成:为什么你电脑上能跑还不够
↑↓ 浏览 Enter 打开Esc 关闭
Damnatiox
知识文件夹

Spring Boot与Web

现代 Java Backend Engineering 学习路线:Spring Boot与Web

0 子目录7 文档
Spring Boot 与 Web:启动与配置、自动装配、请求处理链、接口与校验、文件与通信、运行状态观察

CHAPTER OVERVIEW · 章节概览

先启动并配置服务,再跟踪请求经过容器与控制器的路径,最后完善接口契约和运行状态观察。

本章学习路线

箭头表示建议的学习顺序;先理解问题,再逐步进入实现与实践。

flowchart LR N0["01 启动与配置"] N1["02 自动装配"] N2["03 请求处理链"] N3["04 接口与校验"] N4["05 文件与通信"] N5["06 运行状态观察"] N0 --> N1 --> N2 --> N3 --> N4 --> N5

按顺序学习

7
Spring Boot 与 Web:从零开始的阶段导学先做一个能返回 JSON 的接口,再追问:请求是怎样进入这个方法的,参数由谁转换,异常又由谁变成响应?这一阶段沿着这条路径学习 Spring Boot 与 Web,不把启动成功当作已经理解全部流程。Spring Boot 自动配置、Starter、配置文件与启动过程加入 starter 后,很多对象不再需要手动声明,这不是 Boot 猜中了你的业务,而是自动配置条件生效了。下面从启动入口跟到条件判断,学会在默认行为不合适时查原因、做覆盖。Servlet、Tomcat 与 Spring MVC 请求完整链路一个请求没有进入 Controller,问题可能在过滤器,也可能在路径映射或参数转换。把 Servlet 容器与 Spring MVC 的处理顺序弄清楚,排查时就知道该在哪一站看日志。本章按请求进入到响应写出的顺序展开。REST API:资源建模、HTTP 语义、校验、错误处理与版本演进接口好不好用,不只取决于成功时返回什么。重复提交会怎样,参数错误怎样说明,旧客户端还能不能继续调用,同样需要约定。下面用资源、状态码和错误响应把这些行为表达清楚。Spring Boot Actuator、日志、指标、追踪与生产配置应用已经上线,却有人反馈“有时很慢”,此时需要的不再是启动日志。指标帮助看趋势,追踪帮助找慢在哪一段,日志补充具体原因。下面介绍 Actuator 怎样提供入口,以及哪些信息不宜直接公开。OpenAPI、文件处理、邮件与 WebSocket上传文件、发送邮件和保持 WebSocket 连接,都比普通 JSON 查询多出一些生命周期问题。先想清数据有多大、任务会持续多久、失败后能否重试,再看各自的实现。OpenAPI 则帮助双方把接口约定写明白。Spring Boot 与 Web 开发推荐阅读快速开始文档适合帮你启动项目,参考文档则用来解释自动配置和 Web 行为。建议边做一个小接口边阅读:每加一项依赖或配置,都观察它改变了什么,别一次把所有 starter 装进去。