1. 程式人生 > >Springboot 整合 Swagger

Springboot 整合 Swagger

Swagger是一個自動生成API文件的 框架,避免了傳統的手動編寫API文件,然後再發給前段的繁瑣。

首先:

1、新建一個Sping boot專案,引入以下依賴:

<dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.6.1</version>
        </dependency>

        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.6.1</version>
        </dependency>

2、Swagger配置類:

@Configuration
@EnableSwagger2
public class Swgger2Configuration {

    @Bean
    public Docket createSwagger2Api(){
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.cn.spring.cloud.jennire.microservice"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo(){
        return new ApiInfoBuilder()
                .title("swagger測試")
                .description("簡單容易的API介面文件")
                .version("1.0")
                .build();
    }
}

配置類上需要 有@Configuration 和 @EnableSwagger2 註解  ,需要一個返回Docket的被@Bean註釋的 方法,名字隨意取。

此方法中,new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()) .....   ; apiInfo()方法,執行了Swagger的一些基本資訊,這些都是開發人員自己指定;

3、在Application上加EnableSwagger2註解  ,開啟Swagger:

@SpringBootApplication
@EnableSwagger2
public class MicroserviceApplication {

    public static void main(String[] args) {
        SpringApplication.run(MicroserviceApplication.class, args);
    }
}

4、在介面上加入Swagger:

@RestController
public class HelloController {

    @ApiOperation(value="測試API",notes = "API工具")
    @GetMapping("/hello")
    public String index(@RequestBody User user){

        return "hello";

    }
}

上面的介面有一個User 物件,User物件的引數也可以用Swagger來註釋:

@Getter
@Setter
@Builder
@ApiModel(description = "請求引數實體")
public class User implements Serializable {

    @ApiModelProperty(value = "使用者名稱稱",required = true)
    private String name;

    @ApiModelProperty(value = "使用者性別" ,required = true)
    private String sex;

    @ApiModelProperty(value = "使用者年齡",required = true)
    private int age;
}

@Getter 和@Setter 、 @Builder 註解  是實現了類中引數的 get set 方法,  Builder 是  實現了構建器的方式來 訪問和例項化是物件,只需要引入以下依賴:

<dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.20</version>
        </dependency>

 接下來啟動專案,訪問localhost:8080/swagger-ui.html; 

Swagger中註解說明:

@Api():作用於類上,表示這個類是swagger的資源。

    tags = ”說明該類的作用“

@ApiOperation():用在請求的方法上,說明的方法的使用者和作用

    value=“說明方法的用途、作用”

    notes="方法的備註說明“

@ApiImplicitParams():用在請求的方法上,表示一組引數說明,可以包含多個@ApiImplicitParam()

@ApiImplicitParam():指定一個請求引數的各個方面

       name:引數名

       value:引數的漢字說明

       required:引數是否必須傳

       dataType:引數型別

       defaultValue:引數的預設值

@ApiResponses():用在請求的方法上,表示一組響應。可以包含多個@ApiResponse()

@ApiResponse():用於表示一個錯誤的響應資訊

    code:數字

    message:資訊

    response:丟擲異常的類      

@ApiModel():用在響應類上,表示一個返回響應資料的資訊。

@ApiModelProperty():用在屬性上,描述響應類的屬性

相關推薦

Swagger springboot整合swagger

Swagger是一個簡單但功能強大的API表達工具,使用Swagger生成API,我們可以得到互動式文件。 pom.xml中依賴引入如下: <dependency> <groupId>io.springfox</group

SpringBoot學習筆記03——SpringBoot整合Swagger

1.新增pom依賴 向pom檔案中新增依賴 <!-- swagger --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-sw

springboot整合Swagger能夠自動生成介面api

1.新增pom <!--swagger2--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</arti

swagger教程-springboot整合swagger

一.swagger簡介 1.swagger是什麼?         swagger是REST APIs介面文件生成工具,既然是REST介面那麼就和Sping Rest 搭上線了,swagger 可以生成一個具有互動性的API控制檯,開發者可以用來快

springboot整合swagger文件

swagger,中文“拽”的意思。它是一個功能強大的api框架,它的整合非常簡單,不僅提供了線上文件的查閱,而且還提供了線上文件的測試。另外swagger很容易構建restful風格的api,簡單優雅帥氣,正如它的名字。 一、引入依賴 <dependency>

SpringBoot整合Swagger問題整理

1、swagger版本與springboot版本 本專案使用的是Swagger版本是2.7.0,該版本對應的spring版本是4.3.10,所使用的SpringBoot版本在1.5.6.RELEASE版本左右都是可以的。一般版本差距太大才會導致衝突。 檢視控制檯並

springboot 整合swagger

1. 關於swagger 我們撰寫的介面文件,有面向內部開發者的,也有面向外部的。很多情況下文件和程式碼是分離的,有好處也有壞處。而當我們寫java專案想偷懶,想要自動生成介面文件時,swagger工具是個不錯的選擇。 在Golang中, godoc時標準化的工具,而java似乎沒這

SpringBoot整合Swagger生成介面文件

一、簡介 Swagger是一個功能強大的API框架,它支援線上文件的檢視以及線上文件的測試,方便我們前後端開發人員對接。Swagger使用起來也很簡單,只需要加入swagger對應的依賴以及在controller類以及方法中加入相應的註解說明,swagger就會幫我們自動生

springboot整合swagger遇到的坑

對工作中遇到的問題簡單的總結: 版本資訊:       springboot 2.0.5 加swagger2.2 問題描述:       在controller 中用@RequestBody註解接收引數時,會導致呼叫微服務介面的Fegin注入失敗;去掉@Request

SpringBoot整合Swagger

最近專案與前端對接時開始接觸Swagger。 Swagger:一個規範和完整的框架,用於生成、描述、呼叫和視覺化 RESTful 風格的 Web 服務。總體目標是使客戶端和檔案系統作為伺服器以同樣的速度來更新。檔案的方法,引數和模型緊密整合到伺服器端的程式碼,允許API來始

SpringBoot整合Swagger自動生成API文件

swagger用於定義API文件。 好處: 前後端分離開發 API文件非常明確 測試的時候不需要再使用URL輸入瀏覽器的方式來訪問Controller 傳統的輸入URL的測試方式對於post請求的傳參比較麻煩(當然,可以使用postman這樣的瀏覽器外掛)

Swagger自動介面文件生成框架————springboot整合swagger總結

swagger簡介: swagger是一款開源的api介面文件生成工具。 Swagger的專案主頁:https://swagger.io/    目前比較流行的做法是在程式碼中加入swagger相關的註釋,然後,利用小工具生成swagger.json或者swagger.y

SpringBoot整合Swagger測試api構建

@Author:SimpleWu 什麼是Swagger? Swagger是什麼:THE WORLD’S MOST POPULAR API TOOLING 根據官網的介紹: Swagger Inspector:測試API和生成OpenAPI的開發工具。Swagger Inspector的建立是為了

Springboot 整合 Swagger

Swagger是一個自動生成API文件的 框架,避免了傳統的手動編寫API文件,然後再發給前段的繁瑣。 首先: 1、新建一個Sping boot專案,引入以下依賴: <dependency> <groupId>io.spr

SpringBoot整合Swagger-ui

boot fig agg 隱藏 possible hid .html response des SpringBoot整合Swagger-ui 引入依賴 <dependency> <groupId>org.springframework.b

SpringBoot整合swagger以及swagger的運用

swagget需要的包: <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactI

springboot整合 swagger

轉自:https://blog.csdn.net/xxoo00xx00/article/details/77163399搭建環境:1,jdk1.82,idea3,spring-boot-starter-parent版本1.5.6.RELEASE4,springfox-swag

有關springboot整合swagger遇到的坑

swagger配置類Rest介面:後臺報錯:No mapping found for HTTP request with URI [/swagger-ui] in DispatcherServlet with name 'dispatcherServlet'原因分析:這個錯誤

springboot 整合 swagger 介面文件

優缺點:     優點:省去額外的工作量 單獨去維護一套介面文件、配置簡單(僅使用幾個註解即可完成介面文件的編寫)、支援線上測試     缺點:額外的工作量(對於程式設計師來說) >>step one:新增依賴 <dependency>

六、springboot整合swagger

and 參考 ann 註解 yml pom 字段 mime artifact 六、springboot整合swagger 簡介 swagger 提供最強大,最易用的工具,以充分利用OpenAPI規範。 官網 : https://swagger.io/ 準備工作 pom.x