請先閱讀之前的內(nèi)容:
- Spring Cloud 學習筆記 - No.1 服務(wù)注冊發(fā)現(xiàn)
- Spring Cloud 學習筆記 - No.2 服務(wù)消費 Ribbon & Feign
- Spring Cloud 學習筆記 - No.3 分布式配置 Config
- Spring Cloud 學習筆記 - No.4 斷路器 Hystrix
- Spring Cloud 學習筆記 - No.5 服務(wù)網(wǎng)關(guān) Zuul
關(guān)于 Swagger2,參見 Swagger 學習筆記及與 Spring Boot 的整合
為 eureka-consumer 服務(wù)構(gòu)建 API 文檔
首先在 pom.xml
中添加如下依賴:
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.2.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.2.2</version>
</dependency>
隨后創(chuàng)建一個 Swagger2 配置類,通過 @EnableSwagger2
注解來啟用 Swagger2:
@Configuration
@EnableSwagger2
public class Swagger2 {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.example"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("RESTful APIs in eureka-consumer")
.description("RESTful APIs in eureka-consumer")
.termsOfServiceUrl("http://127.0.0.1:3001")
.contact("Xiang Chen")
.version("1.0")
.build();
}
}
我們也可以通過 @ApiOperation
注解來給API增加說明(但這不是必須的),例如:
@ApiOperation(value="提供 1 + 2 的加法結(jié)果", notes="")
@GetMapping("/consumer")
public String consumer() {
return consumerService.consumer();
}
最后,重啟服務(wù),訪問 http://127.0.0.1:3001/swagger-ui.html 可以看到 Swagger UI API 文檔:
Swagger UI API 文檔