zl程序教程

您现在的位置是:首页 >  大数据

当前栏目

Swagger 2 的配置与使用(亲测有效)

配置 使用 有效 亲测 swagger
2023-06-13 09:11:24 时间

目录

1 需求

我们自己的springboot项目,想要集成swagger2,

2 集成步骤

1 在我们的springboot项目里面导入依赖

  <swagger.version>2.9.2</swagger.version>
  <swagger-bootstrap-ui.version>1.9.6</swagger-bootstrap-ui.version>


   <!-- swagger2-->
            <dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-swagger2</artifactId>
                <version>${swagger.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.xiaoymin</groupId>
                <artifactId>swagger-bootstrap-ui</artifactId>
                <version>${swagger-bootstrap-ui.version}</version>
            </dependency>

2 写配置文件

在yml里面写好一些基本的配置

# swagger配置
swagger:
  title: '数据服务接口文档'
  base:
    package: com.jing.controller
  description: '数据服务接口文档'
  url: ''
  contact:
    name:
    email:
    url: ''
  version: 1.0

3 写一个配置类,将yml里面的东西导入

@Configuration
@EnableSwagger2
public class SwaggerConfiguration {

    /**
     * 标题
     */
    @Value("${swagger.title}")
    private String title;

    /**
     * 基本包
     */
    @Value("${swagger.base.package}")
    private String basePackage;

    /**
     * 描述
     */
    @Value("${swagger.description}")
    private String description;

    /**
     * URL
     */
    @Value("${swagger.url}")
    private String url;

    /**
     * 作者
     */
    @Value("${swagger.contact.name}")
    private String contactName;

    /**
     * 作者网址
     */
    @Value("${swagger.contact.url}")
    private String contactUrl;

    /**
     * 作者邮箱
     */
    @Value("${swagger.contact.email}")
    private String contactEmail;

    /**
     * 版本
     */
    @Value("${swagger.version}")
    private String version;

    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage(basePackage))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title(title)
                .description(description)
                .termsOfServiceUrl(url)
                .contact(new Contact(contactName, contactUrl, contactEmail))
                .version(version)
                .build();
    }
}

4 启动项目,访问

http://192.168.1.12:8083/doc.html