项目优化Day3-04-Swagger_介绍&使用方式&查看接口文档_哔哩哔哩_bilibili
1、引入pom依赖(knife4j是java MVC框架集成swagger生成api文档的增强解决方案)
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.2</version>
</dependency>
2.导入knife4j相关配置
并在当前类下添加如下方法:
/**
* 以下为swagger创建方法,为死代码,复制粘贴即可
* @return
*/
@Bean
public Docket creatRestApi(){
//文档类型
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.lmh.reggie.controller"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo(){
return new ApiInfoBuilder()
.title("瑞吉外卖")
.version("1.0")
.description("瑞吉外卖接口文档")
.build();
}
3.静态资源映射(addResourceHandlers方法,否则接口文档页面无法访问,因为项目此时必须登录后才可访问资源)
registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
4.在LoginCheckFilter中设置不需要处理的请求路径
启动项目,访问localhost:8080/doc.html 即可
可在此进行接口方法的调试
此处可下载接口文档,可在Yapi导入使用
5.通过swagger常用注解定义方法说明
5.1 在实体类上注释(ApiModel,ApiModelProperty)
注释后重启即可在swagger上看到实体解释信息
5.2 在接口上注释(Api,ApiOperation)
重启项目即可看到如下效果:
3.3 方法参数注释(ApiImplicitParams,ApiImplicitParam)
require指的是参数不是必需的
重启项目后即可看到如下效果: