需求
- 前后端分离项目,后端接口写完之后,还要写接口文档,手动整理参数和返回结果,费时费力
使用Swagger组件可以帮助开发者快速生成接口文档
- 而且界面还挺好看的、还可以直接调用接口
实战
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
@EnableSwagger2
@Configuration
public class SwaggerConfig {
@Bean
//构造页面
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
//页面格式
.apiInfo(apiInfo())
.select()
//指定扫描的包名
.apis(RequestHandlerSelectors.basePackage("com.XX.XX"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("标题")
.version("1.0")
.description("描述")
.build();
}
}
- 至此,即可完成基本的配置,生成swagger文档
- 访问link
- 还可以利用swagger提供的一些注解,进行文档的完善
- @Api(tags = “controller名”)
- @ApiOperation(“接口名”)
- @ApiModel(value = “实体的名称”)
- @ApiModelProperty(value = “实体属性的名称”)
- 忽略实体的字段@ApiModelProperty(hidden = true)
- 忽略controller中的参数@ApiIgnore