在Spring Boot設定Swagger 2 - Baeldung
Swagger 2版本變動很大,無法像前面版本容易整合到Spring Boot中。
步驟:
1. 我們將使用Swagger規範的Springfox實現。最新版本可以在Maven Central上找到 。要將其新增到我們的Maven專案中,我們需要pom.xml檔案中的依賴項。
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> |
2. Spring Boot自動配置:
@Configuration @EnableSwagger2 public class SpringFoxConfig { @Bean public Docket api() { return new Docket(DocumentationType.SWAGGER_2) .select() .apis(RequestHandlerSelectors.any()) .paths(PathSelectors.any()) .build(); } } |
Swagger 2通過@ EnableSwagger2註釋啟用。
定義Docket bean 之後,其select()方法將返回ApiSelectorBuilder的例項,該例項提供了一種控制Swagger公開的端點的方法。
可以在RequestHandlerSelectors和PathSelectors的幫助下配置用於選擇RequestHandler的謂詞。兩者都使用any()可以通過Swagger獲得整個API的文件。
此配置足以將Swagger 2整合到現有的Spring Boot專案中。對於其他Spring專案,需要進行一些其他調整。
3. Swagger UI是一個內建解決方案,它使使用者與Swagger生成的API文件進行互動變得更加容易。要使用Swagger UI,還需要一個附加的Maven依賴項:
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency> |
現在,您可以通過訪問http://localhost:8080/your-app-root/swagger-ui.html在瀏覽器中對其進行測試
更深入玩法點選標題見原文。請檢視此GitHub模組見原始碼實現
相關文章
- Spring Boot面試問題| BaeldungSpring Boot面試
- Spring Boot:Spring Boot配置SwaggerSpring BootSwagger
- Spring Boot Reactor Netty配置 | BaeldungSpring BootReactNetty
- Spring Boot實戰:整合Swagger2Spring BootSwagger
- GraphQL SPQR和Spring Boot入門 | baeldungSpring Boot
- Spring Boot系列十九 Spring boot整合 swaggerSpring BootSwagger
- 學習Spring Boot:(六) 整合Swagger2Spring BootSwagger
- Spring Boot2中Swagger3使用Spring BootSwagger
- Spring Boot整合SwaggerSpring BootSwagger
- 基於Spring Batch的Spring Boot的教程 - BaeldungBATSpring Boot
- 【Spring Boot】快速整合SwaggerSpring BootSwagger
- Spring Boot 快速整合SwaggerSpring BootSwagger
- 加快Spring Boot啟動的幾種方法 | baeldungSpring Boot
- Spring boot 之自動生成API文件swagger2Spring BootAPISwagger
- Spring Boot整合swagger使用教程Spring BootSwagger
- Spring Boot使用MyBatis Generator、SwaggerSpring BootMyBatisSwagger
- Configure swagger with spring bootSwaggerSpring Boot
- Spring Boot2 系列教程(十七)SpringBoot 整合 Swagger2Spring BootSwagger
- Spring Boot的Clean架構教程與原始碼 - BaeldungSpring Boot架構原始碼
- 架構實戰篇(二):Spring Boot 整合Swagger2架構Spring BootSwagger
- Spring Boot 2.x (十二):Swagger2的正確玩兒法Spring BootSwagger
- Spring Boot 教程 (4) - swagger-uiSpring BootSwaggerUI
- Spring Boot 整合 SpringDoc Swagger 3Spring BootSwagger
- Spring Boot中使用Swagger2構建RESTful APIs介紹Spring BootSwaggerRESTAPI
- Spring Boot 整合 Swagger2,構建強大的 API 文件Spring BootSwaggerAPI
- 手把手教你Spring Boot整合Mybatis Plus和Swagger2Spring BootMyBatisSwagger
- Spring Boot 整合 Swagger 構建介面文件Spring BootSwagger
- Spring Boot如何生成swagger.json?Spring BootSwaggerJSON
- Spring Boot 2.x基礎教程:Swagger靜態文件的生成Spring BootSwagger
- Spring Boot專案的推薦軟體包結構 - BaeldungSpring Boot
- 使用Spring Boot排程WebSocket推送的教程和原始碼 - BaeldungSpring BootWeb原始碼
- 在Spring Batch中配置重試邏輯 - BaeldungSpringBAT
- 備忘錄六:Spring Boot + Swagger_UISpring BootSwaggerUI
- Swagger 與 Spring Boot REST API 整合詳解SwaggerSpring BootRESTAPI
- Spring Boot微服務中的十二因子方法論(12Factor) - BaeldungSpring Boot微服務
- Spring Boot整合Swagger報錯:"this.condition" is nullSpring BootSwaggerNull
- spring-boot-route(五)整合Swagger生成介面文件SpringbootSwagger
- 如何在SpringBoot中設定TLS? |BaeldungSpring BootTLS