swagger和springboot整合

坚持_第一天      2022-05-07     756

关键词:

Swagger

号称全世界最流行的api框架;

RestFul Api 文档在线自动生成工具=>Api文档与API定义同步更新

配置

<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 -->
<dependency>
  <groupId>io.springfox</groupId>
  <artifactId>springfox-swagger2</artifactId>
  <version>2.9.2</version>
</dependency>

<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
<dependency>
  <groupId>io.springfox</groupId>
  <artifactId>springfox-swagger-ui</artifactId>
  <version>2.9.2</version>
</dependency>

简单的更改文档信息,主要看源码

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

   @Bean//配置swagger的Docket的bean实例
   public Docket docket(){
       return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo());
  }

   //重写apiInfo
   private ApiInfo apiInfo(){
       Contact contact = new Contact("", "", "");
       return new ApiInfo("Api Documentation",
               "Api Documentation",
               "1.0",
               "urn:tos",
               contact,
               "Apache 2.0",
               "http://www.apache.org/licenses/LICENSE-2.0",
               new ArrayList());

  }
}

配置扫描接口

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

  @Bean//配置swagger的Docket的bean实例
  public Docket docket(){
      return new Docket(DocumentationType.SWAGGER_2)
              .select()
              //RequestHandlerSelectors 配置要扫描接口的方式
              //basePackage 指定要扫描的包
              .apis(RequestHandlerSelectors.basePackage("com.lt.controller"))
              //过滤路径
              //ant()过滤的路径
              .paths(PathSelectors.ant("/"))
              .build();
  }

}

题目

我们只希望swagger在生产使用,在发布不使用。

使用 .enable() 判断

 

 

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

   @Bean//配置swagger的Docket的bean实例
   public Docket docket(Environment environment){
       Profiles dev = Profiles.of("dev");
       boolean b = environment.acceptsProfiles(dev);//判断是否是当前文件
       return new Docket(DocumentationType.SWAGGER_2)
              .enable(b);
  }

}

分组

组名

.groupName("A")

如何分组:创建多个Docket即可如

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

  @Bean//配置swagger的Docket的bean实例
  public Docket docket1(){
      return new Docket(DocumentationType.SWAGGER_2)
              .groupName("A");
  }@Bean//配置swagger的Docket的bean实例
  public Docket docket2(){
      return new Docket(DocumentationType.SWAGGER_2)
              .groupName("B");
  }@Bean//配置swagger的Docket的bean实例
  public Docket docket3(){
      return new Docket(DocumentationType.SWAGGER_2)
              .groupName("C");
  }

}

接口注释

只要我们的接口中返回值有实体类就会存在到swagger。

    @GetMapping("/user")
  public User user(){
      return new User();
  }

@ApiModel("用户") 给实体类加标注

@ApiModel("用户")
public class User {
  public String userName;
  public String password;
}

@ApiOperation("111111") 给方法加注释

@ApiParam("2222")给参数加注释

    @ApiOperation("111111")
  public String user1( @ApiParam("2222") String userName ){
      return "new User()";
  }
}

@ApiModelProperty("用户名字") 给实体加注释

    @ApiModelProperty("用户名字")
  public String userName;

 

springboot和swagger整合

 本文来源:https://blog.csdn.net/saytime/article/details/74937664一、依赖<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version& 查看详情

springboot整合swagger

Swagger使用Swagger有什么用?swagger是一个流行的API开发框架,这个框架以“开放API声明”(OpenAPISpecification,OAS)为基础, 对整个API的开发周期都提供了相应的解决方案,是一个非常庞大的项目(包括设计、编码和测试,... 查看详情

springboot整合swagger框架

 Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法、参数和模型紧密集成到服务器端的代码,允许API来始终保... 查看详情

springboot学习——springboot快速整合swagger文档

@[toc]简介优点后端根据swagger语法,自动生成漂亮规范的接口文档。做交互测试。劣势侵入式的,影响程序运行,尤其是传参的时候。注意swagger分1.2版本和2.0版本,差异较大。swagger1.2即swagger-ui;swagger2.0即springfox-swagger。本文介... 查看详情

springboot整合swagger测试api构建

@Author:SimpleWu什么是Swagger?Swagger是什么:THEWORLD’SMOSTPOPULARAPITOOLING根据官网的介绍:SwaggerInspector:测试API和生成OpenAPI的开发工具。SwaggerInspector的建立是为了解决开发者的三个主要目标。执行简单的API测试生成OpenAPI文档探索新... 查看详情

springboot整合swagger2

一关于SwaggerSwagger能成为最受欢迎的RESTAPIs文档生成工具之一,有以下几个原因:Swagger可以生成一个具有互动性的API控制台,开发者可以用来快速学习和尝试API。Swagger可以生成客户端SDK代码用于各种不同的平台上的实现。Swagger... 查看详情

springboot整合swagger2搭建api在线文档

...阅和测试功能。利用Swagger2很容易构建RESTful风格的API,在SpringBoot中集成Swagger2,步骤如下。1.引入依赖<!--Swagger2--><dependency><groupId> 查看详情

springboot整合springfox-swagger2

前言不管SpringBoot整合还是SpringMVC整合Swagger都基本类似,重点就在于配置Swagger,它的精髓所在就在于配置。@目录1、Swagger简介2、整合前可能遇到的问题3、SpringBoot集成Swagger4、配置Swagger4.1、Swagger四部分布局4.2、第二部分:API基... 查看详情

springboot整合swagger

本文github位置:https://github.com/WillVi/springboot-swagger2-demo环境准备JDK版本:1.8Springboot版本:1.5.16Swagger及其Swagger-ui版本:2.6.1(关于swagger-ui版本每个版本的汉化方式可能有不同)默认url:http://localhost:8080/swagger-ui.htmlMaven依赖 查看详情

springboot2整合swagger简单入门

Swagger是一款RESTFUL接口的文档在线自动生成+功能测试功能软件。1、pom.xml添加配置可以到http://mvnrepository.com上搜索springfox,便可以看到SpringfoxSwagger2和SpringfoxSwaggerUi的版本。    <dependency><groupId>io.springfox</groupId> 查看详情

springboot之swagger2集成

一、Swagger2简单介绍  Swagger2,它可以轻松的整合到SpringBoot中,并与SpringMVC程序配合组织出强大RESTfulAPI文档。它既可以减少我们创建文档的工作量,同时说明内容又整合入实现代码中,让维护文档和修改代码整合为一体,可以... 查看详情

springboot整合swagger-ui快速生成在线api文档

目录SpringBoot整合Swagger-ui实现在线API文档本篇要点一、restful风格简单介绍二、SpringBoot与Swagger-ui快速整合1、第一种方式:使用官方依赖2、第二种方式:使用第三方依赖三、swagger-ui的基本注解源码下载参考阅读SpringBoot整合Swagger-u... 查看详情

swaggerlearing-springboot整合swagger

学习了一下swagger。这是编写的Demo源码https://github.com/AmberBar/Learning/tree/master/swagger-learning/swagger需要的小伙伴可以clone直接运行访问地址http://localhost:9999/swagger-ui.html#/  查看详情

springboot整合swagger,方便后端测试

参考技术A用Swagger能够在后端写好接口后进行测试,测试过程非常方便。Swagger是一个用于生成、描述和调用RESTful接口的Web服务。通俗的来讲,Swagger就是将项目中所有(想要暴露的)接口展现在页面上,并且可以进行接口调用和... 查看详情

springboot整合swagger-ui

SpringBoot整合Swagger-ui引入依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency>< 查看详情

springboot整合swagger

...Api到Postman测试,耗费了不少时间。这次新项目决定使用SpringBoot来做,各方面都节省了不少配置,一想到Api的对接就有点头大,于是决定把Swagger集成进来,实现Api文档的自动生成(通过http://localhost:8080/swagge 查看详情

springboot整合swagger2

  手写Api文档的几个痛点:文档需要更新的时候,需要再次发送一份给前端,也就是文档更新交流不及时。接口返回结果不明确不能直接在线测试接口,通常需要使用工具,比如postman接口文档太多,不好管理  Swagger也就是... 查看详情

springboot2整合swagger2-plus

目录一.整合swagger21.加依赖2.写配置3.常用注解:4.演示demo5.实际效果查询新增登录二.整合swagger2-plus1.加依赖2.写配置3.实际应用4.最终效果新增登录一.整合swagger21.加依赖<!--引入swagger2--><dependency><groupId>io.springfox</gr... 查看详情