[Swagger2 提供一下能力]:
1.随项目自动生成强大RESTful API文档
2.API文档与代码整合在一起,便于同步更新API说明
3.页面测试功能来调试每个RESTful API
[集成Swagger2步骤]:
1.修改pom.xml, 添加Swagger2依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.2.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.2.2</version>
</dependency>
2.创建Swagger2配置类
在spring boot启动类所在包或子包中创建Swagger配置类SwaggerConfig.java,如下:
SwaggerConfig.java内容如下:
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo())
.select().apis(RequestHandlerSelectors.basePackage("com.zhaopin.pinebase"))
// 指定扫描包下面的注解
.paths(PathSelectors.any()).build();
}
// 创建api的基本信息
private ApiInfo apiInfo() {
return new ApiInfoBuilder().title("集成Swagger2构建RESTful APIs").description("高性能在线测试接口文档自动生成开发平台").termsOfServiceUrl("https://www.xxxx.com").contact(" Pine Sir")
.version("1.0.0")
.build();
}
}
3.创建Controller: SwaggerController.java
@RestController
@RequestMapping("/swagger")
public class SwaggerController {
@ApiOperation(value = "获取用户信息", notes = "根据id来获取用户详细信息")
@ApiImplicitParam(name = "id", value = "用户ID", required = true, dataType = "String")
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
public Map<String, String> getInfo(@PathVariable String id) {
Map<String, String> map = new HashMap<String, String>();
map.put("name", "张三");
map.put("age", "34");
return map;
}
}
4.启动Spring boot,访问Swagger UI界面:http://localhost:8080/swagger-ui.html
5.测试API