. Swagger 简介
1.1 解决的问题
随着互联网架构的演进,现代 Web 应用普遍采用 前后端分离 的开发模式。在这种模式下:
- 前端负责页面渲染与用户交互(如 Vue、React);
- 后端专注于业务逻辑与数据接口(如 Spring Boot 提供 RESTful API);
- API 接口成为前后端协作的唯一纽带。
然而,随之而来的问题是:
接口频繁变更,但文档难以同步更新。开发人员往往忙于编码,无暇维护 Word 或 Markdown 文档,导致前端拿到的文档过时,联调效率低下。
✅ Swagger 正是为解决这一痛点而生。
通过集成 Swagger,项目可以:
- 自动生成实时、准确的在线 API 文档;
- 无需手动编写和维护文档;
- 支持在线调试:前端或测试人员可直接在页面上填写参数、发送请求、查看响应;
- 提升开发与协作效率:后端开发时也能即时验证接口是否符合预期。
简单说:只要代码一改,文档自动更新;打开浏览器,就能测接口。
1.2 Swagger 官方定位
Swagger 是目前最主流的 API 文档工具之一。在其官网首页,Swagger 给出了这样一句宣言:
“The Best APIs are Built with Swagger Tools.”
(最好的 API,是用 Swagger 工具构建的。)
这句话虽显自信,却也反映了其在 API 设计与文档领域的广泛认可与强大能力。
在 Spring Boot 项目中,我们通常使用 Swagger2(基于 springfox 实现)来快速集成这一能力,实现“代码即文档”的开发体验。