集成環(huán)境
springboot 2.1.4.RELEASE
springfox-swagger2 2.6.1
第一步:依賴
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
第二步:swagger配置
package com.longfor.iot.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
//為當(dāng)前包路徑
.apis(RequestHandlerSelectors.basePackage("com.longfor.iot"))
.paths(PathSelectors.any())
.build();
// return new Docket(DocumentationType.SWAGGER_2).select().apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)).build();
}
//構(gòu)建 api文檔的詳細(xì)信息函數(shù),注意這里的注解引用的是哪個(gè)
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
//頁面標(biāo)題
.title("Spring Boot 使用 Swagger2 構(gòu)建RESTful API")
//創(chuàng)建人
.contact(new Contact("Bryan", "http://blog.bianxh.top/", ""))
//版本號(hào)
.version("1.0")
//描述
.description("API 描述")
.build();
}
}
第三步:編寫controller
@RestController
public class TestController {
@PostMapping("/test")
public String listDeviceByParams() {
return "test";
}
第四步:啟動(dòng)訪問 http://localhost:8081/swagger-ui.html 顯示下面頁面冯乘,成功
image.png