0. 导入maven依赖
<dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId>
</dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId>
</dependency>
1. 创建knife4j配置类
@Configuration
public class Knife4jConfiguration {private ApiInfo apiInfo() {return new ApiInfoBuilder().title("SpringBoot整合Knife4j-api接口文档").description("本文档描述了SpringBoot如何整合Knife4j").version("1.0").build();}@Beanpublic Docket adminApiConfig() {Docket adminConfig = new Docket(DocumentationType.SWAGGER_2).groupName("后台管理接口").apiInfo(apiInfo()).select()//只显示admin路径下的页面.apis(RequestHandlerSelectors.basePackage("com.sky.controller")).paths(PathSelectors.regex("/admin/.*")).build();return adminConfig;}@Beanpublic Docket userApiConfig() {Docket adminConfig = new Docket(DocumentationType.SWAGGER_2).groupName("用户端管理接口").apiInfo(apiInfo()).select()//只显示user路径下的页面.apis(RequestHandlerSelectors.basePackage("com.sky.controller")).paths(PathSelectors.regex("/user/.*")).build();return adminConfig;}}
2. 使用knife4j
常用注解:
注解 | 使用 |
---|---|
@ApiModel("实体类描述") | 在实体类使用 |
@ApiModelProperty("实体类属性描述") | 在实体类属性使用 |
@Api(tags = "controller描述") | 在controller使用 |
@ApiOperation(value = "api操作描述") | 在controller内请求方法使用 |
3. 效果
后台管理接口:
用户端接口: