依赖
<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>
配置swagger进入容器
@Configuration //声明该类为配置类
@EnableSwagger2 //声明启动Swagger2
public class SwaggerConfig{
@Bean
public Docket customDocket() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))//扫描带有这个注解的方法
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("API接口")//文档说明
.version("v1.0.0")//文档版本说明
.build();
}
}
编写接口
@RestController
@Api(tags = "使用Swagger测试接口信息") //这个总体接口的信息
public class TestSwagger {
@GetMapping("/user/get")
@ApiOperation(value = "获取用户信息",notes = "根据id获取用户信息")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "query",name = "id", value = "用户Id", dataType = "Integer")
})
@ApiResponses({
@ApiResponse(code = 400, message = "缺少必要参数"),
@ApiResponse(code = 401, message = "您没有权限"),
@ApiResponse(code = 403, message = "路径隐藏不能访问"),
@ApiResponse(code = 404, message = "您的路径不存在或者资源不存在"),
@ApiResponse(code = 405, message = "请求方法不支持")
})
public String getUser(Integer id) {
return id + "";
}
}
swagger查看接口信息地址
http://localhost:8080/swagger-ui.html