1.导入Maven依赖
Swagger2 需要导入两个依赖,“swagger2”以及“swagger-ui”。
“swagger-ui”用于显示URL界面,开发URL默认地址:http://localhost:8080/swagger-ui.html
<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>
2.创建Swagger2配置类
@Configuration
@EnableSwagger2 //开启Swagger2
public class SwaggerConfig {
// 配置了Swagger的Docket的bean实例
@Bean
public Docket createDocket() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.swagger.controller"))
.build();
}
// 配置Swagger信息=apiInfo
private ApiInfo apiInfo() {
// 作者信息
Contact contact = new Contact("姓名", "http://www.baidu.com", "邮箱");
return new ApiInfo(
"SwaggerAPI文档",
"接口文档",
"1.0",
"http://www.baidu.com",
contact,
"Apache 2.0",
"http://www.apache.org/licenses/LICENSE-2.0",
new ArrayList()
);
}
}
3.注解
Swagger通过注解表明该接口会生成文档,包括接口名、请求方法、参数、返回信息。
@Api:修饰整个类,描述Controller的作用
@ApiOperation:描述一个类的一 个方法,或者说一个接口
@ApiModel:用对象来接收参数,修饰类
@ApiModelProperty:用对象接收参数时,描述对象的一个字段
@ApiResponse: HTTP响应其中1个描述
@ApiResponses: HTTP响应整体描述,一般描述错误的响应
@Apignore:使用该注解忽略这个API
@ApiError:发生错误返回的信息
@ApiParam:单个参数描述
@ApimplicitParam:一个请求参数,用在方法上
@ApilmplicitParams:多个请求参数