springboot中swagger2的使用

1. 导入依赖

    // swagger2
    implementation group: 'io.springfox', name: 'springfox-swagger2', version: '2.9.2'
    implementation group: 'io.swagger', name: 'swagger-annotations', version: '1.5.22'
    implementation group: 'io.swagger', name: 'swagger-models', version: '1.5.22'
    implementation 'com.github.xiaoymin:swagger-bootstrap-ui:1.9.2'

2.配置类

@Configuration
@EnableSwagger2
public class SwaggerConfig {
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
            .protocols(Collections.singleton("http"))
            .host("127.0.0.1:32801")
            .apiInfo(apiInfo())
            .select()
            .apis(RequestHandlerSelectors.basePackage("com.example"))
            .paths(PathSelectors.any())
            .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
            .title("标题")
            .description("简介")
            .termsOfServiceUrl("http://127.0.0.1:32801")
            .version("1.0")
            .build();
    }
}

默认swagger2的界面地址是:项目的根路径/swagger-ui.html
springboot中swagger2的使用_第1张图片

swagger2使用说明:
         @Api:用在类上,说明该类的作用
         @ApiOperation:用在方法上,说明方法的作用
         @ApiIgnore:使用该注解忽略这个API
         @ApiImplicitParams:用在方法上包含一组参数说明
         @ApiImplicitParam:用在@ApiImplicitParams注解中,指定一个请求参数的各个方面
            paramType:参数放在哪个地方
                 header-->请求参数的获取:@RequestHeader
                 query-->请求参数的获取:@RequestParam
                 path(用于restful接口)-->请求参数的获取:@PathVariable
                 body(不常用)
                 form(不常用)
             name:参数名
             dataType:参数类型
             required:参数是否必须传
             value:参数的意思
             defaultValue:参数的默认值
         @ApiResponses:用于表示一组响应
         @ApiResponse:用在@ApiResponses中,一般用于表达一个错误的响应信息
             code:数字,例如400
             message:信息,例如"请求参数没填好"
             response:抛出异常的类
         @ApiModel:描述一个Model的信息(这种一般用在post创建的时候,使用@RequestBody这样的场景,请求参数无法使用@ApiImplicitParam注解进行描述的时候)
            @ApiModelProperty:描述一个model的属性

参考
https://blog.csdn.net/Xiaodongge521/article/details/102857461
https://www.cnblogs.com/fengli9998/p/7921601.html

你可能感兴趣的:(SpringBoot,spring,boot,java,后端)