主要观点:作者在办公室墙上挂着“Everything begins with an idea”的名言,其妻子在他开发健身应用 API 时在 Etsy 上找到该产品,他喜欢这句名言,认为想法只有被体验才有意义,所以 startups 要尽快将想法推向市场。文中以创建励志名言 API 为例,展示了使用 Java 17、Spring Boot 3 和 Gradle 实现 API-First 的过程,包括创建项目、生成 API 和模型对象、添加业务逻辑、配置 Swagger Docs 等,最后使用 Heroku 部署服务,并通过 curl 命令验证服务,强调了及时交付想法的重要性,源代码可在 GitLab 上找到。
关键信息:
- 用 Java 17 和 Spring Boot 3 创建 RESTful API,使用 Gradle 进行构建自动化,暂不考虑持久层和安全。
- 让 ChatGPT 生成 OpenAPI 规范,手动更新确保
Quote
模式的id
和quote
属性为必填。 - 使用 Spring Boot CLI 创建项目,编辑
build.gradle
文件采用 API-First 方法,将 OpenAPI 规范放入resources/static
文件夹。 - 创建
QuotesRepository
和QuotesService
类添加业务逻辑,实现QuotesApi
。 - 添加 Spring Boot 的 Swagger Docs 依赖,创建
banner.txt
文件,创建 Git 仓库跟踪代码。 - 使用 Heroku 部署服务,创建
system.properties
和Procfile
文件,通过 Git 命令推送代码。 - 用 curl 命令验证服务,包括获取所有名言、根据 ID 获取名言、获取随机名言等。
重要细节:
- 在创建项目时使用特定命令
spring init --dependencies=web quotes
。 - 在
build.gradle
文件中配置各种插件和依赖项。 QuotesRepository
类中硬编码了 5 条名言数据。QuotesService
类中通过QuotesRepository
获取名言数据。QuotesController
类实现了QuotesApi
的接口方法。- Heroku 部署时需进行身份验证、创建应用等操作。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。