亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解如何在SpringBoot里使用SwaggerUI

發布時間:2020-09-12 02:46:22 來源:腳本之家 閱讀:149 作者:Chris_Mo 欄目:編程語言

Swagger

Swagger是一種和語言無關的規范和框架,用于定義服務接口,主要用于描述RESTful的API。它專注于為API創建優秀的文檔和客戶端庫。支持Swagger的API可以為API方法生成交互式的文檔,讓用戶可以通過以可視化的方式試驗,查看請求和響應、頭文件和返回代碼,從而發現API的功能。

swagger用于定義API文檔。

好處:

  1. 前后端分離開發
  2. API文檔非常明確
  3. 測試的時候不需要再使用URL輸入瀏覽器的方式來訪問Controller
  4. 傳統的輸入URL的測試方式對于post請求的傳參比較麻煩(當然,可以使用postman這樣的瀏覽器插件)
  5. spring-boot與swagger的集比較成簡單

SpringBoot嵌入SwaggerUI

步驟

1.jar包引入

<dependency>
  <groupId>io.springfox</groupId>
  <artifactId>springfox-swagger-ui</artifactId>
  <version>2.2.2</version>
  <scope>compile</scope>
</dependency>
<dependency>
  <groupId>io.springfox</groupId>
  <artifactId>springfox-swagger2</artifactId>
  <version>2.2.2</version>
  <scope>compile</scope>
</dependency>

2.基于SpringBoot配置SwaggerConfig

@Configuration
@EnableSwagger2
public class SwaggerConfig {
  @Bean
  public Docket newsApi() {
    //return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select().paths(PathSelectors.any()).build();
    Docket docket = new Docket(DocumentationType.SWAGGER_2);
    docket.enable(true);
    docket.apiInfo(apiInfo()).select().paths(PathSelectors.any()).build();
    return docket;
  }

  private ApiInfo apiInfo() {
    return new ApiInfoBuilder().title("訂單中心測試平臺").description("在這里你可以瀏覽項目所有接口,并提供相關測試工具")
        .termsOfServiceUrl("http://www-03.ibm.com/software/sla/sladb.nsf/sla/bm?Open").contact("test")
        .license("China Red Star Licence Version 1.0").licenseUrl("#").version("1.0").build();
  }
}

3.WebConfig配置說明

這里有一個需要注意的問題,讓WebConfig去繼承WebMvcAutoConfigurationAdapter而不是直接繼承WebMvcConfigurerAdapter,否則Swagger的頁面出不來。

@Configuration
@EnableWebMvc
public class WebConfig extends WebMvcAutoConfigurationAdapter {

  @Override
  public void addCorsMappings(CorsRegistry registry) {
    registry.addMapping("/**");
  }

  @Bean
  public static PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer() {
    return new PropertySourcesPlaceholderConfigurer();
  }

  @Bean
  public Filter characterEncodingFilter() {
    CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter();
    characterEncodingFilter.setEncoding("UTF-8");
    characterEncodingFilter.setForceEncoding(true);
    return characterEncodingFilter;
  }

  @Bean
  public MappingJackson2HttpMessageConverter converter() {
    MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
    return converter;
  }

  @Bean
  public ViewResolver getViewResolver() {
    InternalResourceViewResolver resolver = new InternalResourceViewResolver();
    resolver.setViewClass(JstlView.class);
    resolver.setPrefix("/jsp");
    resolver.setSuffix(".jsp");
    return resolver;
  }

  @Bean
  public StandardServletMultipartResolver getStandardServletMultipartResolver() {
    return new StandardServletMultipartResolver();
  }
}

4.SwaggerUI頁面訪問

http://localhost:8080/projectName/swagger-ui.html#!/

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

聂荣县| 阿勒泰市| 崇明县| 绍兴县| 三都| 长宁县| 疏勒县| 伊春市| 都昌县| 临颍县| 中方县| 建始县| 海盐县| 卓尼县| 新余市| 东光县| 商丘市| 临汾市| 赫章县| 青阳县| 民勤县| 亳州市| 富顺县| 平陆县| 兰考县| 恩平市| 云浮市| 温泉县| 东丽区| 泾川县| 嵩明县| 普兰县| 克拉玛依市| 克山县| 珲春市| 安龙县| 福州市| 河津市| 水城县| 西林县| 宝丰县|