Swagger 增強(knife4j)自動生成Api 文檔(SpringBoot & SpringCloud Gateway自動配置)

前言

在經歷了N次繁瑣重複的swagger 配置之後(每一個項目都需要配置 SwaggerConfig),萌生了引入一個依賴自動幫我實現配置的觀念,於是乎,bubble-fireworks-starter-swagger 誕生了…

項目介紹

bubble-fireworks ,該項目是個人在日常工作中被N多重複性的工作所累,進而萌生了將重複性的東西歸檔,提高工作效率, 目前已發佈快照版到中央倉庫, 0.0.1-SNAPSHOT 版本, 項目地址如下:

https://github.com/fxbin/bubble-fireworks

使用方法(springboot || springcloud gateway)

1、引入pom依賴

        <dependency>
            <groupId>cn.fxbin.bubble</groupId>
            <artifactId>bubble-fireworks-starter-swagger</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>

一些註解的使用

@Api:用在類上,說明該類的作用

@ApiOperation:用在方法上,說明方法的作用,標註在具體請求上,value和notes的作用差不多,都是對請求進行說明;tags則是對請求進行分類的,比如你有好幾個controller,分別屬於不同的功能模塊,那這裏我們就可以使用tags來區分了,看上去很有條理

@ApiImplicitParams:用在方法上包含一組參數說明

@ApiImplicitParam:用在@ApiImplicitParams註解中,指定一個請求參數的各個方面

  paramType:參數放在哪個地方

  header 請求參數的獲取:@RequestHeader

  query 請求參數的獲取:@RequestParam

  path(用於restful接口) 請求參數的獲取:@PathVariable

  body(不常用)

  form(不常用)

  name:參數名

  dataType:參數類型

  required:參數是否必須傳

  value:參數的意思

  defaultValue:參數的默認值

@ApiResponses:用於表示一組響應

@ApiResponse:用在@ApiResponses中,一般用於表達一個錯誤的響應信息

  code:數字,例如400

  message:信息,例如”請求參數沒填好”

  response:拋出異常的類

@ApiModel:描述一個Model的信息(這種一般用在post創建的時候,使用@RequestBody這樣的場景,請求參數無法使用@ApiImplicitParam註解進行描述的時候)表明這是一個被swagger框架管理的model,用於class上
@ApiModel:使用在實體類上,描述實體類。
@ApiModelProperty :使用在實體類上的成員變量上,描述成員變量的含義。

2、配置文件,開啓權限認證(默認關閉)

bubble:
  fireworks:
    swagger:
      authorization:
        enabled: true

更多配置,請參考如下:

在這裏插入圖片描述

3、啓動項目

項目結構如下

在這裏插入圖片描述

4、訪問swagger增強文檔

訪問規則: ip:port/doc.html

筆者這裏如下:

http://localhost:9191/doc.html

效果圖~~~
在這裏插入圖片描述

參考文檔:

knife4j快速開始
springfox 源碼系列


end

如有問題,請留言或者發送郵件,感謝您的閱讀

歡迎關注博主公衆號:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章