SpringBoot整合Swagger

1、导入依赖

        <!--swagger-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>3.0.0</version>
        </dependency>
        <!--页面美化jar  默认自带的丑,还有layer版本的-->
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>swagger-bootstrap-ui</artifactId>
            <version>1.9.6</version>
        </dependency>

2、需要配置swagger一些信息

@EnableSwagger2  //开启swagger
@Configuration
public class SwaggerConfig {

    @Bean
    public Docket createSwaggerDocket(){
        return new Docket(DocumentationType.SWAGGER_2)
                    .apiInfo(AipInfo())  //api文档的描述信息
                    .select()            
                    .apis(RequestHandlerSelectors.basePackage("com.itles.controller"))  //需要扫描的controller包路径
                    .paths(PathSelectors.any()) 
                    .build();
    }

    private ApiInfo AipInfo() {
        return new ApiInfoBuilder()
                .title("描述")
                .description("信息")
                .version("v1.0.0")
                .build();
    }
}

在Controller类上加:Api(value = "测试test"),效果如下:

效果

3、默认访问路径:http://localhost:8989/doc.htm

4、常用注解

@API(作用在controller)

属性:value 类说明   tag 类说明非空覆盖value值

@ApiOperation(作用在controller的方法上)

属性:value 方法介绍  notes 备注说明

@ApiParam(作用在controller方法上的参数中)

属性:name(参数名称, 和前端传值需保持一致)   value 参数说明

           defaultValue 默认值      required 是否必须

@ApiModel 

属性:value 类说明   description 详细介绍

@ApiModelProperty

属性:value 字段的含义/说明

5、不拦截swagger文档接口地址,不然无法显示

"/swagger-resources/**",

"/webjars/**",

"/v2/**",

"/swagger-ui.html/**"  或 "/doc.html"


版权声明:本文为weixin_45877245原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。