快速掌握Swagger
发布时间
阅读量:
阅读量
Swagger
使用Swagger只需要按照规范定义接口及接口相关信息,生成接口文档,以及在线接口调试页面
Swagger在开发阶段帮助后端人员做后端的接口测试的
地址:https://swagger.io/
我们在开发的过程中使用Knife4j对集成Swagger简化操作,生成Api文档
使用方式
- 导入
Knife4j坐标 - 在配置类中加入Knife4j相关配置
- 设置静态资源映射,否则接口文档页面无法访问
导入Knife4j的坐标:
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
</dependency>
在配置类中加入Knife4j的相关配置
@Bean
public Docket docket() {
//定义生成api所需要的信息
ApiInfo apiInfo = new ApiInfoBuilder()
.title("接口文档")
.version("2.0")
.description("接口文档")
.build();
Docket docket = new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo)
.select()
//指定生成接口所需要扫描的包
.apis(RequestHandlerSelectors.basePackage("com.exempole.controller"))
.paths(PathSelectors.any())
.build();
return docket;
}
apiInfo定义生成接口文档所需要的相关信息比如,标头,版本,描述信息
Docket文档对象将接口信息添加,指定生成接口所需要的扫描的包,根据反射将扫描的包中的方法变量生成对应的接口文档
设置静态资源映射:
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
}
将进行访问之后生成的接口文件存放在指定的目录下
我的理解:
如果不设置静态资源映射,我们进行访问的时候会默认认为我们访问的是接口地址,不是访问接口文件的静态资源
项目启动之后访问对应的地址:http://localhost:8080/doc.html
常用注解

@Api:
@Api(tags="接口信息")
@ApiOperation:
@ApiOperation(value="登录")
@ApiModel:
@ApiModel(description="传递的数据模型")
@ApiModelProperty:
@ApiModelProperty("属性")
注解之后在接口文档对应出都会显示相关信息便于操作
全部评论 (0)
还没有任何评论哟~
