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

springboot集成swagger過程解析

 更新時間:2020年01月03日 11:00:22   作者:聞窗  
這篇文章主要介紹了springboot集成swagger過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

這篇文章主要介紹了springboot集成swagger過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

springboot集成swagger

1、pom.xml中引入:

<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>

2、配置類:

@Configuration
@EnableSwagger2
public class SwaggerConfig {
  @Bean
  public Docket swaggerSpringMvcPlugin() {

    return new Docket(DocumentationType.SWAGGER_2)
        .select()
        //加了ApiOperation注解的類,才生成接口文檔
        .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
        .build();
  }

}

3、controller相應的注解:@ApiOperation

@ApiOperation(value = "用戶登錄",notes = "")
  @PostMapping("/loginOn")
  public ResponseMessage loginOn(@RequestBody @Valid UserReq userReq){
    ResponseMessage responseMessage = userServiceImp.loginOn(userReq);
    return responseMessage;
  }

最后本地默認訪問:http://localhost:8080/swagger-ui.html

既可以看到相關接口效果圖:

訪問頁失敗的可能原因:

1》》訪問方法本來就是404錯誤:在sprigboot中有個重要的概念叫做:約定優(yōu)于配置:

springboot啟動的時候如果沒有指定掃描的包路徑時,默認會去加載其當前包及子包下的組件,這里需要注意

如果把啟動類放入service包下,頁面就會訪問不到:

2》》SwaggerConfig 類的寫法有問題:Docket方法挺多的,這里需要注意:

@Configuration
@EnableSwagger2
public class SwaggerConfig {
  @Bean
  public Docket swaggerSpringMvcPlugin() {

    return new Docket(DocumentationType.SWAGGER_2)
        .select()
        //加了ApiOperation注解的類,才生成接口文檔
        .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
        .build();
  }

}

3》》配置攔截器時是否進行了攔截:

在實現(xiàn)WebMvcConfigurer接口時,我們再配置攔截器時,需要對相應的請求進行過濾放行,比如靜態(tài)資源,登錄請求等

@Configuration
public class WebConfig implements WebMvcConfigurer {
  /**
   * 配置攔截器
   * @param registry
   */
  @Override
  public void addInterceptors(InterceptorRegistry registry) {
    registry.addInterceptor(new RequestInterceptor()).addPathPatterns("/**").excludePathPatterns("/user/login")
        //排除swagger
    .excludePathPatterns("/swagger-resources/**", "/webjars/**",
        "/v2/**", "/swagger-ui.html/**");
  }

}

有的代碼是通過重寫WebMvcConfigurer的addResourceHandlers方法:

/**
   * 添加靜態(tài)資源--過濾swagger-api (開源的在線API文檔)
   * @param registry
   *//*
  @Override
  public void addResourceHandlers(ResourceHandlerRegistry registry) {
    //過濾swagger
    registry.addResourceHandler("swagger-ui.html")
        .addResourceLocations("classpath:/META-INF/resources/");

    registry.addResourceHandler("/webjars/**")
        .addResourceLocations("classpath:/META-INF/resources/webjars/");

    registry.addResourceHandler("/swagger-resources/**")
        .addResourceLocations("classpath:/META-INF/resources/swagger-resources/");

    registry.addResourceHandler("/swagger/**")
        .addResourceLocations("classpath:/META-INF/resources/swagger*");

    registry.addResourceHandler("/v2/api-docs/**")
        .addResourceLocations("classpath:/META-INF/resources/v2/api-docs/");

  }*

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

相關文章

最新評論

隆子县| 穆棱市| 马山县| 宜都市| 巴林左旗| 蒙城县| 荆门市| 南阳市| 五莲县| 达日县| 沁水县| 广东省| 宜川县| 安西县| 新蔡县| 霍林郭勒市| 临泽县| 红安县| 遂平县| 乳源| 仁布县| 阳春市| 静海县| 江北区| 乐昌市| 合水县| 旌德县| 佛坪县| 健康| 江陵县| 三原县| 井陉县| 福州市| 九江县| 沙坪坝区| 临猗县| 雅安市| 双柏县| 施甸县| 梁河县| 华坪县|