1.什么是swagger2
Swagger2 是一个规范和完整的框架,用于生成、描述、调用和可视化Restful风格的web服务,现在我们使用spring boot 整合它。
作用:
- 接口的文档在线自动生成;
- 功能测试;
2.为什么要使用swagger2
3. 如何使用swagger2
引入依赖:
<!--引入swagger2依赖-->
<dependency>
<groupId>com.spring4all</groupId>
<artifactId>swagger-spring-boot-starter</artifactId>
<version>1.9.1.RELEASE</version>
</dependency>
<!--图形化依赖-->
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>swagger-bootstrap-ui</artifactId>
<version>1.9.6</version>
</dependency>
创建swagger2配置类,并写入如下的代码:
//记得在类上加上@Configuration注解,表示该类为配置类,等价于之前的xml配置文件
//创建swagger实例
@Bean
public Docket docket() {
Docket docket=
new Docket(DocumentationType.SWAGGER_2)
.apiInfo(getInfo())//设置接口文档的信息
.select()
.apis(RequestHandlerSelectors.basePackage("com.ls.controller")) //指定为那些路径下得到类生成接口文档
.build()
;
return docket;
}
private ApiInfo getInfo(){
Contact DEFAULT_CONTACT = new Contact("1suo", "https://blog.csdn.net/m0_65224643?type=blog", "1428286944@qq.com");
ApiInfo DEFAULT = new ApiInfo("用户管理系统API", "该系统中的接口专门操作用户的", "v1.0", "https://blog.csdn.net/m0_65224643?type=blog",
DEFAULT_CONTACT, "1suo", "https://blog.csdn.net/m0_65224643?type=blog", new ArrayList<VendorExtension>());
return DEFAULT;
}
开启swagger的注解驱动:
4.访问swagger接口文档
第一种: http://localhost:8080/swagger-ui.html
第二种: http://localhost:8080/doc.html
5.swagger2常用注解
- @Api(tags=“”): 使用在接口类上,对接口类的说明
- @ApiOperation(value=""):接口方法上,对接口方法的说明
- @ApiImplicitParams(@ApiImplicitParam(name=“参数名”,value="参数说明",require="是否必写",dataType="数据类型") ) : 接口方法所有参数的概述
- @ApiModel(value=""): 使用在实体类上,对实体类的说明
- @ApiModelProperty(value=""):使用在实体类属性上,对属性的说明