0 pom依赖
io.springfox
springfox-boot-starter
3.0.0
com.github.xiaoymin
swagger-bootstrap-ui
1.9.6
1 Swagger3 配置类
@Configuration
@EnableOpenApi
public class Swagger3Config {
@Value("${swagger.enabled}")
private Boolean swaggerEnabled;
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
// 设置页面标题
.title("XXX服务系统-接口总览")
// 设置接口描述
.description("平台接口")
// 设置联系方式
.contact(new Contact("XXX", "localhost:8080/swagger-ui.html", "1522063891@qq.com"))
// 设置版本
.version("0.0.1")
// 构建
.build();
}
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.OAS_30)
// 指定构建api文档的详细信息的方法:apiInfo()
.apiInfo(apiInfo())
.enable(swaggerEnabled)
.select()
// 指定要生成api接口的包路径,这里把controller作为包路径,生成controller中的所有接口
.apis(RequestHandlerSelectors.basePackage("com.heny.wqx.controller"))
.paths(PathSelectors.any())
.build();
}
}
2 相关注释
@ApiModel 注解用于实体类,表示对类进行说明,用于参数用实体类接收。
@ApiModelProperty 注解用于类中属性,表示对 model 属性的说明或者数据操作更改。
Controller 类中相关注解
@Api 注解用于类上,表示标识这个类是 swagger 的资源。
@ApiOperation 注解用于方法,表示一个 http 请求的操作。
@ApiParam 注解用于参数上,用来标明参数信息。