- 重点是方便测试,当然也可以生成HTML和PDF版本的接口规范文档。
- 最稳定最方便的版本2.7.0(UI界面依据个人爱好,boot版本2.1.2)
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.7.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.7.0</version> </dependency>
- swagger配置类
@Configuration @EnableSwagger2 public class Swagger2 { @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2).globalOperationParameters(getParameters()).apiInfo(apiInfo()) .select().apis(RequestHandlerSelectors.any()) .paths(PathSelectors.any()).build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder().title("open-cloud-platform").version("1.0").build(); } List<Parameter> getParameters() { return Collections.singletonList(new ParameterBuilder().name("Authorization") .defaultValue("Bearer " + JWTUtils.generate("123")).description("Authorization") .modelRef(new ModelRef("string")).parameterType("header").required(false).build()); } }
- 如果只是为了进行在线测试,springboot与swagger的集合到此就OK了。离线测试工具使用的是pm(在于测试报文的报文)
- 常用注解:
- @Api:修饰整个类,描述Controller的作用
- @ApiOperation:描述一个类的一个方法,或者说一个接口
- @ApiParam:单个参数描述
- @ApiModel:用对象来接收参数
- @ApiProperty:用对象接收参数时,描述对象的一个字段
- @ApiResponse:HTTP响应其中1个描述
- @ApiResponses:HTTP响应整体描述
- @ApiIgnore:使用该注解忽略这个API
- @ApiError :发生错误返回的信息
- @ApiImplicitParam:一个请求参数
- @ApiImplicitParams:多个请求参数
来源:oschina
链接:https://my.oschina.net/u/2701614/blog/3007619