knife4j 是为Java MVC框架集成Swagger生成Api文档的增强解决方案
功能特性
· 简洁
基于左右菜单式的布局方式,是更符合国人的操作习惯吧,文档更清晰…
· 个性化配置
个性化配置项,支持接口地址、接口description属性、UI增强等个性化配置功能…
· 增强
接口排序、Swagger资源保护、导出Markdown、参数缓存众多强大功能…
在线预览
http://knife4j.xiaominfo.com/doc.html
快速开始
knife4j相当于swagger的进阶版,knife4j的使用方法和swagger几乎一模一样,没有什么学习成本,不同的是展示的接口UI文档更加友好和人性化。
添加pom依赖
<!--Swagger组件-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.5.0</version>
</dependency>
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>2.0.5</version>
</dependency>
创建 Knife4jConfig 配置文件
/**
* knife4j 配置
*
* @Author
*/
@Configuration
@EnableSwagger2
public class Knife4jConfig {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("***"))//所需要的扫描的包名:例如 com.***.***.controller
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("***")//标签名
.description("使用 knife4j 搭建的后台服务API接口文档")
.termsOfServiceUrl("http://localhost:8080/")
.contact("")
.version("1.0.0")
.build();
}
}
controller 类注解
@Api(value = "**", tags = {"页面展示的类标签名"})
controller 方法注解
@ApiOperation(value = "页面展示的方法名", notes = "方法描述")
以上步骤就完成了配置,访问只需在地址后加上doc.htm即可
例:http://******:8083/doc.html