集成swagger3基本用法



1、引入pom
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>

2、增加swagger3配置文件
@Configuration
public class Swagger3Config {

@Bean
public Docket createRestApi(Environment env) {
//設置要暴漏接口文檔的配置環境
Profiles profile = Profiles.of("prod");
boolean flag = env.acceptsProfiles(profile);

return new Docket(DocumentationType.OAS_30)
.apiInfo(apiInfo())
// 定義是否開啟swagger,false為關閉,可以通過變量控制
.enable(!flag) //生產環境不開啟
.select()
// .apis(RequestHandlerSelectors.any())
.apis(RequestHandlerSelectors.withMethodAnnotation(Operation.class))
.paths(PathSelectors.any())
.build();
}

/**
* API 頁面上半部分展示信息
*/
private ApiInfo apiInfo() {
return new ApiInfoBuilder().title("xxxApi Doc")
.description("xxx接口文檔")
.version("v1.0")
.build();
}
}

3、Controller使用
@Api(tags="命令組API")
public class CmdGroupController{
/**
* 分頁查詢命令組
*/
@PostMapping(value = "listXX")
@Operation(summary = "分頁查詢XX")
public Result<PageInfo> listXX(@RequestHeader @NotBlank(message = "token不能為空") String token,
@RequestBody @Valid ListXXReq input){

@Data
public class ListReq {
@Schema(description = "描述")
private String des;
}
}
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM