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

SpringBoot整合Swagger2/Swagger3之?dāng)r截器配置方式

 更新時間:2026年06月29日 09:24:33   作者:Ju3tinZ2  
這段文章詳細(xì)介紹了Springfox Swagger 3.0的配置方法,包括前端資源路徑設(shè)置和POM依賴配置,并提供了AntPath路徑匹配規(guī)則說明,幫助大家更好地理解和應(yīng)用Swagger文檔生成

1. swagger2.0

1.1 POM依賴

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

1.2 Swagger設(shè)置

@Configuration
// 關(guān)鍵
@EnableSwagger2
public class SwaggerConfig {

    @Bean
    public Docket createRestAPI() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                // 改為自己的controller包路徑
                .apis(RequestHandlerSelectors.basePackage("xx.xx.xx.controller"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("WebNovel接口文檔")
                .description("WebNovel Restful 接口")
                .contact(new Contact("xxUser", "#", "xxUser@.qq.com"))
                .version("1.0")
                .build();
    }
}

1.3 攔截器排除

@Configuration
public class WebMvcConfig extends WebMvcConfigurationSupport {

    // 請求路徑排除
    @Override
    protected void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor()
            .addPathPatterns("/**")
            .excludePathPatterns("/swagger-resources/**")
            .excludePathPatterns("/webjars/**")
            .excludePathPatterns("/v2/**")
            .excludePathPatterns("/swagger-ui.html/**");
        super.addInterceptors(registry);
    }

    // 資源映射增加
    @Override
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("swagger-ui.html")
                .addResourceLocations("classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**")
                .addResourceLocations("classpath:/META-INF/resources/webjars/");
        super.addResourceHandlers(registry);
    }
}

2. swagger3.0

swagger3.0前端資源路徑在springfox-swagger-ui-3.0.0.jar包中。

具體路徑:META-INF\resources\webjars\springfox-swagger-ui

2.1 POM依賴

<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-boot-starter</artifactId>
    <version>3.0.0</version>
</dependency>

2.2 Swagger設(shè)置

@Configuration
// 關(guān)鍵
@EnableOpenApi
public class SwaggerConfig {

    @Bean
    public Docket createRestAPI() {
        return new Docket(DocumentationType.OAS_30)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("xx.xx.xx.controller"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("WebNovel接口文檔")
                .description("WebNovel Restful 接口")
                .contact(new Contact("xxUser", "#", "xxUser@qq.com"))
                .version("1.0")
                .build();
    }
}

2.3 攔截器排除

@Configuration
public class WebMvcConfig extends WebMvcConfigurationSupport {

    @Override
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/swagger-ui/**")
                .addResourceLocations("classpath:/META-INF/resources/webjars/springfox-swagger-ui/");
        super.addResourceHandlers(registry);
    }

    @Override
    protected void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor()
                .addPathPatterns("/**")
                .excludePathPatterns("/swagger**/**")
                .excludePathPatterns("/webjars/**")
                .excludePathPatterns("/v3/**")
                .excludePathPatterns("/doc.html");
        super.addInterceptors(registry);
    }
}

3. Ant Path匹配規(guī)則

說明:

WildcardDescription
?匹配任意單個字符
*匹配0或多個字符
**匹配0或多級目錄

例子:

PathDescription
/api/**app路徑下所有路徑
/**/*.html任意html文件
/my*/***my開頭的路徑下的所有路徑

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot中使用redis做分布式鎖的方法

    SpringBoot中使用redis做分布式鎖的方法

    這篇文章主要介紹了SpringBoot中使用redis做分布式鎖的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • Java異常日志堆棧丟失的原因與排查

    Java異常日志堆棧丟失的原因與排查

    這篇文章主要給大家介紹了關(guān)于Java異常日志堆棧丟失的原因與排查的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • Redis使用RedisTemplate模板類的常用操作方式

    Redis使用RedisTemplate模板類的常用操作方式

    這篇文章主要介紹了Redis使用RedisTemplate模板類的常用操作方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • JVM虛擬機(jī)的類加載機(jī)制詳解

    JVM虛擬機(jī)的類加載機(jī)制詳解

    這篇文章主要介紹了JVM虛擬機(jī)的類加載機(jī)制詳解,類是在運(yùn)行期間第一次使用時動態(tài)加載的,而不是一次性加載所有類,因為如果一次性加載,那么會占用很多的內(nèi)存,需要的朋友可以參考下
    2023-12-12
  • Java優(yōu)秀測試框架TestNG詳解

    Java優(yōu)秀測試框架TestNG詳解

    這篇文章主要為大家詳細(xì)介紹了Java優(yōu)秀測試框架TestNG,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • MyBatis中example.createCriteria()方法的具體使用

    MyBatis中example.createCriteria()方法的具體使用

    本文詳細(xì)介紹了MyBatis的Example工具的使用方法,包括鏈?zhǔn)秸{(diào)用指定字段、設(shè)置查詢條件、支持多種查詢方式等,還介紹了mapper的crud方法、and/or方法的使用,以及如何進(jìn)行多條件和多重條件查詢,感興趣的可以了解一下
    2024-10-10
  • 為IntelliJ IDEA配置JVM參數(shù)的兩種方法

    為IntelliJ IDEA配置JVM參數(shù)的兩種方法

    在使用IntelliJ IDEA進(jìn)行Java開發(fā)時,合理配置JVM參數(shù)對于優(yōu)化項目性能和資源管理至關(guān)重要,IntelliJ IDEA提供了兩種方便的方式來設(shè)置JVM參數(shù),本文將詳細(xì)介紹這兩種方法:通過工具欄編輯配置和通過服務(wù)編輯配置,需要的朋友可以參考下
    2024-12-12
  • Java鎖之自旋鎖詳解

    Java鎖之自旋鎖詳解

    這篇文章主要介紹了Java鎖之自旋鎖詳解,本文是系列文章的第一篇,請持續(xù)關(guān)注腳本之家java欄目,需要的朋友可以參考下
    2014-09-09
  • Springboot使用filter對response內(nèi)容進(jìn)行加密方式

    Springboot使用filter對response內(nèi)容進(jìn)行加密方式

    這篇文章主要介紹了Springboot使用filter對response內(nèi)容進(jìn)行加密方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Drools Fusion(CEP)定義及使用方法講解

    Drools Fusion(CEP)定義及使用方法講解

    今天小編就為大家分享一篇關(guān)于Drools Fusion(CEP)定義及使用方法講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03

最新評論

同心县| 孝义市| 东乡族自治县| 凤山县| 尼木县| 夏津县| 夏津县| 福海县| 文山县| 突泉县| 郓城县| 大名县| 新乐市| 海城市| 凌海市| 电白县| 当雄县| 常德市| 江永县| 呈贡县| 河东区| 文化| 温泉县| 宿松县| 卢湾区| 朝阳区| 宝坻区| 南江县| 色达县| 莆田市| 华池县| 威宁| 资中县| 河间市| 禹州市| 化德县| 仪陇县| 剑川县| 西城区| 崇礼县| 满城县|