亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

springboot2.x集成swagger

gekylin / 1827人閱讀

摘要:頁面如下集成由于個人感覺原生的不太好看,網上提供了。

集成swagger pom包配置

    io.springfox
    springfox-swagger2
    2.9.2



    io.springfox
    springfox-swagger-ui
    ${swagger.version}
添加Swagger配置文件
@Configuration
@EnableSwagger2
public class SwaggerConfig {
    /**
     * 創(chuàng)建一個Docket對象
     * 調用select()方法,
     * 生成ApiSelectorBuilder對象實例,該對象負責定義外漏的API入口
     * 通過使用RequestHandlerSelectors和PathSelectors來提供Predicate,在此我們使用any()方法,將所有API都通過Swagger進行文檔管理
     * @return
     */
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.any())
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                //標題
                .title("Spring Boot中使用Swagger2構建RESTful APIs")
                //簡介
                .description("")
                //服務條款
                .termsOfServiceUrl("")
                //作者個人信息
                .contact(new Contact("chenguoyu","","chenguoyu_sir@163.com"))
                //版本
                .version("1.0")
                .build();
    }
}

如果不想將所有的接口都通過swagger管理的話,可以將RequestHandlerSelectors.any()修改為RequestHandlerSelectors.basePackage()

配置靜態(tài)訪問資源
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        // 解決 swagger-ui.html 404報錯
        registry.addResourceHandler("/swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
    }
}

到這里為止swagger就已經配置完了,可以啟動項目,然后訪問如下鏈接即可http://localhost:9000/swagger...

端口號applicationContext中設置的端口號。

頁面如下

集成swagger-bootstrap-ui

由于個人感覺原生的swagger-ui不太好看,網上提供了swagger-bootstrap-ui。

pom依賴

    com.github.xiaoymin
    swagger-bootstrap-ui
    1.9.3
配置靜態(tài)訪問資源
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        // 解決 swagger-ui.html 404報錯
        registry.addResourceHandler("/swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
        // 解決 doc.html 404 報錯
        registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/");

    }
}

這時只需要訪問以下鏈接即可http://localhost:9000/doc.html

swagger常用注解

@Api:用在類上,標志此類是Swagger資源

屬性名稱 備注
value 該參數(shù)沒什么意義,在UI界面上不顯示,所以不用配置
tags 說明該類的作用,參數(shù)是個數(shù)組,可以填多個
description 對api資源的描述

@ApiOperation:用在方法上,描述方法的作用

屬性名稱 備注
value 方法的用途和作用
tags 方法的標簽,可以設置多個值
notes 方法的注意事項和備注
response 返回的類型(盡量不寫,由swagger掃描生成)

@ApiImplicitParams:包裝器:包含多個ApiImplicitParam對象列表

屬性名稱 備注
value 多個ApiImplicitParam配置

@ApiParam:用于Controller中方法的參數(shù)說明

屬性名稱 備注
name 屬性名稱
value 屬性值
defaultValue 默認屬性值
allowableValues 可以不配置
required 是否屬性必填
allowMultiple 文件上傳時,是否允許多文件上傳

@ApiImplicitParam:定義在@ApiImplicitParams注解中,定義單個參數(shù)詳細信息,如果只有一個參數(shù),也可以定義在方法上

屬性名稱 備注
name 參數(shù)名
value 參數(shù)說明
dataType 參數(shù)類型
paramType 表示參數(shù)放在哪里
header : 請求參數(shù)的獲?。篅RequestHeader
query : 請求參數(shù)的獲?。篅RequestParam
path : 請求參數(shù)的獲?。篅PathVariable
body : 不常用
form : 不常用
defaultValue 參數(shù)的默認值
required 參數(shù)是否必須傳

@ApiModel:用在類上,表示對類進行說明,用于實體類中的參數(shù)接收說明

屬性名稱 備注
value 默認為類的名稱
description 對該類的描述

@ApiModelProperty:在model類的屬性添加屬性說明

屬性名稱 備注
value 屬性描述
name 屬性名稱
allowableValues 參數(shù)允許的值
dataType 數(shù)據(jù)類型
required 是否必填

@ApiResponses:包裝器:包含多個ApiResponse對象列表

屬性名稱 備注
value 多個ApiResponse配置

@ApiResponse:定義在@ApiResponses注解中,一般用于描述一個錯誤的響應信息

屬性名稱 備注
code 響應碼
message 狀態(tài)碼對應的響應信息
response 默認響應類 Void
responseContainer 參考ApiOperation中配置

@ApiIgnore():用于類或者方法上,不被顯示在頁面上

總結

除上面之外有點值得注意的是,如果是上傳文件的話,需要把@ApiImplicitParam中的dataType屬性配置為__File否則在swagger中會顯示為文本框而不是上傳按鈕

如果需要項目代碼,可以去我的github中下載;具體代碼可以查看swagger目錄

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://www.ezyhdfw.cn/yun/74623.html

相關文章

  • SpringBoot 2.X Kotlin與Swagger2生成API文檔

    摘要:再通過函數(shù)創(chuàng)建的之后,用來創(chuàng)建該的基本信息這些基本信息會展現(xiàn)在文檔頁面中。函數(shù)返回一個實例用來控制哪些接口暴露給來展現(xiàn),本例采用指定掃描的包路徑來定義,會掃描該包下所有定義的,并產生文檔內容除了被指定的請求。 showImg(http://download.qfeoo.com/kotlin_springboot_logo.png); 這里有個地方需要注意,在測試WebFlux集成Swa...

    cyqian 評論0 收藏0
  • ApiBoot - ApiBoot Swagger 使用文檔

    摘要:相關配置配置參數(shù)參數(shù)介紹默認值是否啟用文檔標題快速集成文檔文檔描述通過自動化配置快速集成文檔,僅需一個注解一個依賴即可。注意通過所獲取的類型都為。 ApiBoot是一款基于SpringBoot1.x,2.x的接口服務集成基礎框架, 內部提供了框架的封裝集成、使用擴展、自動化完成配置,讓接口開發(fā)者可以選著性完成開箱即用, 不再為搭建接口框架而犯愁,從而極大...

    yuanxin 評論0 收藏0
  • Spring Data REST API集成Springfox、Swagger

    摘要:請注意,截至目前版本,用于的集成仍處于孵化階段,并且存在一些嚴重的錯誤和缺少的功能例如,請參閱此處和此處。響應可以使用和注解來調整不同的響應狀態(tài)及其有效結論允許您在創(chuàng)建數(shù)據(jù)庫驅動的時產生快速結果。 原文: Documenting a Spring Data REST API with Springfox and Swagger 使用Spring Date REST,你可以迅速為Spr...

    darcrand 評論0 收藏0
  • SpringBoot非官方教程 | 第十一篇:SpringBoot集成swagger2,構建優(yōu)雅的R

    摘要:另外很容易構建風格的,簡單優(yōu)雅帥氣,正如它的名字。配置一些基本的信息。三寫生產文檔的注解通過注解表明該接口會生成文檔,包括接口名請求方法參數(shù)返回信息的等等。四參考資料中使用構建強大的文檔 swagger,中文拽的意思。它是一個功能強大的api框架,它的集成非常簡單,不僅提供了在線文檔的查閱,而且還提供了在線文檔的測試。另外swagger很容易構建restful風格的api,簡單優(yōu)雅帥氣...

    荊兆峰 評論0 收藏0
  • Java | Spring Boot Swagger2 集成REST ful API 生成接口文檔

    摘要:集成生成接口文檔原文簡介由于的特性,用來開發(fā)變得非常容易,并且結合來自動生成文檔變得方便快捷。使用生成,我們可以得到交互式文檔。聽過與的結合,生成更加完備的文檔。接下來將基于與搭建完整的文檔系統(tǒng)。 Spring Boot Swagger2 集成REST ful API 生成接口文檔 原文 簡介 由于Spring Boot 的特性,用來開發(fā) REST ful 變得非常容易,并且結合 Sw...

    joyvw 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<