最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

spring boot 2整合swagger-ui過程解析

 更新時間:2019年12月03日 09:31:07   作者:慕塵  
這篇文章主要介紹了spring boot 2整合swagger-ui過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下

這篇文章主要介紹了spring boot 2整合swagger-ui過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下

1.添加mvn依賴

修改pom.xml加入

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

2.創(chuàng)建配置類

在Application.java同級創(chuàng)建Swagger2的配置類Swagger2

package com.tydt.decision;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class Swagger2{
  @Bean
  public Docket createRestApi() {
    return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo())
        .select()
        .apis(RequestHandlerSelectors.basePackage("com.tydt.decision.controller"))
        .paths(PathSelectors.any()).build();
  }

  private ApiInfo apiInfo() {
    return new ApiInfoBuilder().title("Decision Manage Swagger RESTful APIs")
        .description("Decision API")
        .termsOfServiceUrl("http://swagger.io/")
        .contact(new Contact("Beibei", "127.0.0.1", "XXXXXXX@qq.com"))
        .version("1.0")
        .build();

  }

}

注:

如果出現(xiàn)下面情況

引入需要的包

但是啟動時又出現(xiàn)Error creating bean with name 'apiDocumentationScanner' defined in URL

這是由于swagger依賴google的guava,需要添加依賴,而當前項目的guava版本與之不匹配,修改為

<dependency>
  <groupId>com.google.guava</groupId>
  <artifactId>guava</artifactId>
  <version>15.0</version>
</dependency>

http://localhost:8090/swagger-ui.html頁面沒顯示

這是因為Spring Boot自動配置本身不會自動把/swagger-ui.html這個路徑映射到對應(yīng)的目錄META-INF/resources/下面。加上這個映射即可

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
  
  ……
  public void addResourceHandlers(ResourceHandlerRegistry registry) {
    registry.addResourceHandler("swagger-ui.html")
        .addResourceLocations("classpath:/META-INF/resources/");
    registry.addResourceHandler("/webjars/**")
        .addResourceLocations("classpath:/META-INF/resources/webjars/");

  }
}

解決了上面出現(xiàn)的問題,訪問http://localhost:8090/swagger-ui.html就能看到下面的頁面了

說明:

(1)通過@Configuration注解,讓Spring來加載該類配置

(2)再通過@EnableSwagger2注解來啟用Swagger2

(3)通過createRestApi函數(shù)創(chuàng)建Docket的Bean之后,apiInfo()用來創(chuàng)建該Api的基本信息

(4)select()函數(shù)返回一個ApiSelectorBuilder實例用來控制哪些接口暴露給Swagger來展現(xiàn)

(5)指定掃描的包路徑來定義,會掃描該包下所有Controller定義的API,并產(chǎn)生文檔內(nèi)容,除了用@ApiIgnore指定的

(6)通過@ApiOperation注解來給API增加說明

(7)通過@ApiImplicitParams

(8)@ApiImplicitParam注解來給參數(shù)增加說明

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 關(guān)于Maven中pom.xml文件配置詳解

    關(guān)于Maven中pom.xml文件配置詳解

    pom.xml是Maven項目的核心配置文件,它描述了項目的結(jié)構(gòu)、依賴關(guān)系、構(gòu)建配置等信息,通過合理配置pom.xml,可以提高項目的可維護性和構(gòu)建效率
    2025-01-01
  • Java web.xml之contextConfigLocation作用案例詳解

    Java web.xml之contextConfigLocation作用案例詳解

    這篇文章主要介紹了Java web.xml之contextConfigLocation作用案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Springboot下載excel文件中文名亂碼問題及解決

    Springboot下載excel文件中文名亂碼問題及解決

    這篇文章主要介紹了Springboot下載excel文件中文名亂碼問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • SpringBoot整合Druid實現(xiàn)數(shù)據(jù)庫連接池和監(jiān)控

    SpringBoot整合Druid實現(xiàn)數(shù)據(jù)庫連接池和監(jiān)控

    Druid是Java語言中使用的比較多的數(shù)據(jù)庫連接池。Druid還提供了強大的監(jiān)控和擴展功能。面將介紹SpringBoot整合Druid實現(xiàn)數(shù)據(jù)庫連接池和監(jiān)控功能,感興趣的可以了解一下
    2021-08-08
  • 為什么Java volatile++不是原子性的詳解

    為什么Java volatile++不是原子性的詳解

    這篇文章主要給大家介紹了關(guān)于為什么Java volatile++不是原子性的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2021-02-02
  • java 使用異常的好處總結(jié)

    java 使用異常的好處總結(jié)

    這篇文章主要介紹了java 使用異常的好處總結(jié)的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • Java鏈表中添加元素的原理與實現(xiàn)方法詳解

    Java鏈表中添加元素的原理與實現(xiàn)方法詳解

    這篇文章主要介紹了Java鏈表中添加元素的原理與實現(xiàn)方法,結(jié)合實例形式詳細分析了Java實現(xiàn)鏈表中添加元素的相關(guān)原理、操作技巧與注意事項,需要的朋友可以參考下
    2020-03-03
  • Java中synchronized的四種用法詳解

    Java中synchronized的四種用法詳解

    這篇文章主要介紹了Java中synchronized的四種用法詳解,當我們處理多線程處理同步問題的時候就會用到synchronized這個關(guān)鍵字,下面介紹下synchronized的四種用法,需要的朋友可以參考下
    2024-01-01
  • 淺析SpringBoot2.4 靜態(tài)資源加載問題

    淺析SpringBoot2.4 靜態(tài)資源加載問題

    這篇文章主要介紹了SpringBoot2.4 靜態(tài)資源加載問題,本文給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • SpringBoot瘦身打包部署的實現(xiàn)

    SpringBoot瘦身打包部署的實現(xiàn)

    這篇文章主要介紹了SpringBoot瘦身打包部署的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2020-04-04

最新評論

双柏县| 项城市| 惠安县| 茶陵县| 南丰县| 乐平市| 元江| 阿拉善左旗| 镇坪县| 普兰店市| 绍兴县| 锡林郭勒盟| 永顺县| 湘乡市| 尚志市| 汝州市| 洪江市| 南城县| 庄河市| 米泉市| 定边县| 海宁市| 项城市| 天津市| 汝阳县| 西贡区| 江门市| 海林市| 谢通门县| 兴仁县| 丹东市| 顺昌县| 中卫市| 余姚市| 霍山县| 宁德市| 嘉兴市| 承德县| 青铜峡市| 永宁县| 讷河市|