目录
一、配置Swagger
1、添加Swagger2的相关依赖到pom.xml文件中
<!-- 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>
2、创建Swagger2的配置类
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
Docket docket() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
// 以下两个apis可同时存在,也可值填写其中一种
.apis(RequestHandlerSelectors.basePackage("org.test.demo.controller")) // 包名下类,都显示接口说明,可配置多个
// .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class)) // 带有 ApiOperation 注解显示接口说明
.paths(PathSelectors.any())
.build()
.groupName("客户端")
.apiInfo(new ApiInfoBuilder()
.version("V1.0")
.title("API客户端接口文档")
.build())
.enable(false);// 不配置默认为true,false时,不可访问。可用于线上环境配置
}
/**
* 如果使用包名,可配置多个
* @return
*/
@Bean
Docket docket2() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.basePackage("org.test.demo.controller2"))
.paths(PathSelectors.any())
.build()
.groupName("管理端")
.apiInfo(new ApiInfoBuilder()
.version("V1.0")
.title("API管理端接口文档").build());
}
}
3、开发接口
@RequestMapping("/api/test")
@RestController
@Api(tags = "测试接口") // 用来描述整个controller信息
public class TestController {
/**
* .@ApiImplicitParam
* paramType:方法的参数类型
* path:参数获取方式@PathVariable
* query:参数获取方式@RequestParam
* header:参数获取方式@RequestHeader
* body以及form
* name:表示参数名称
* value:参数的描述信息
* .@ApiR