SpringBoot集成Swagger

pom.xml依赖

    io.springfox

    springfox-swagger2

    2.5.0

    io.springfox

    springfox-swagger-ui

    2.5.0


配置文件

package com.xxx.wallet.article.web.util.swagger;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import springfox.documentation.builders.ApiInfoBuilder;

import springfox.documentation.builders.PathSelectors;

import springfox.documentation.builders.RequestHandlerSelectors;

import springfox.documentation.service.ApiInfo;

import springfox.documentation.spi.DocumentationType;

import springfox.documentation.spring.web.plugins.Docket;

import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration

@EnableSwagger2

public class SwaggerConfig {

@Bean

    public DocketcreateRestApi() {

return new Docket(DocumentationType.SWAGGER_2)

.apiInfo(apiInfo())

.select()

//为当前包路径

                .apis(RequestHandlerSelectors.basePackage("com.xxx.wallet.article.web.controller"))

.paths(PathSelectors.any())

.build();

    }

//构建 api文档的详细信息函数

    private ApiInfoapiInfo() {

return new ApiInfoBuilder()

//页面标题

                .title("WEB——文章头图接口管理")

//创建人

//                .contact(new Contact("admin", "null", "null"))

                //版本号

                .version("1.0")

//描述

                .description("restful API")

.build();

    }

}


访问路径:项目路劲+swagger-ui.html

例如:http://localhost:8888/dyj/swagger-ui.html


Swagger常用注解

- @Api()用于类;

表示标识这个类是swagger的资源

- @ApiOperation()用于方法;

表示一个http请求的操作

- @ApiParam()用于方法,参数,字段说明;

表示对参数的添加元数据(说明或是否必填等)

- @ApiModel()用于类

表示对类进行说明,用于参数用实体类接收

- @ApiModelProperty()用于方法,字段

表示对model属性的说明或者数据操作更改

- @ApiIgnore()用于类,方法,方法参数

表示这个方法或者类被忽略

- @ApiImplicitParam() 用于方法

表示单独的请求参数

- @ApiImplicitParams() 用于方法,包含多个@ApiImplicitParam


@Api()

用于类;表示标识这个类是swagger的资源

tags–表示说明

value–也是说明,可以使用tags替代

但是tags如果有多个值,会生成多个list


@ApiOperation() 用于方法;表示一个http请求的操作

value用于方法描述

notes用于提示内容

tags可以重新分组(视情况而用)


@ApiParam() 用于方法,参数,字段说明;表示对参数的添加元数据(说明或是否必填等)

name–参数名

value–参数说明

required–是否必填


@ApiModel()用于类;表示对类进行说明,用于参数用实体类接收

value–表示对象名

description–描述

都可省略


@ApiModelProperty()用于方法,字段;表示对model属性的说明或者数据操作更改

value–字段说明

name–重写属性名字

dataType–重写属性类型

required–是否必填

example–举例说明

hidden–隐藏


@ApiIgnore()用于类或者方法上,可以不被swagger显示在页面上

比较简单, 这里不做举例


@ApiImplicitParam() 用于方法

表示单独的请求参数

@ApiImplicitParams() 用于方法,包含多个@ApiImplicitParam

name–参数ming

value–参数说明

dataType–数据类型

paramType–参数类型

example–举例说明

你可能感兴趣的:(SpringBoot集成Swagger)