欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot整合Swagger接口文檔工具的流程步驟

 更新時間:2023年08月18日 09:58:36   作者:Jimmy  
我們在開發(fā)接口的時候,會將接口文檔給前端的開發(fā)者進行對接,我們可以通過Postman或者Yapi等接口管理工具進行編寫管理,實際開發(fā)中,接口的管理確實也應(yīng)該通過專業(yè)的工具管理,本文,我們就來談?wù)勗趺丛赟pringBoot整合Swagger接口文檔工具

我們在開發(fā)接口的時候,會將接口文檔給前端的開發(fā)者進行對接。我們可以通過 Postman或者 Yapi等接口管理工具進行編寫管理。實際開發(fā)中,接口的管理確實也應(yīng)該通過專業(yè)的工具管理。

那么,如果只是小團隊使用,我們是否可以在邊開發(fā)的過程中,順便把接口文檔給寫了呢?

當然,本文,我們就來談?wù)勗趺丛?Spring Boot整合 Swagger接口文檔工具。

本文開發(fā)環(huán)境:

  • spring boot 版本 2.1.3.RELEASE
  • java SDK 版本 1.8
  • mac m1 系統(tǒng)

本文,在筆者之前的項目淺聊一下Spring Security的使用方法基礎(chǔ)上開發(fā)。

筆者嘗試了下整合 swagger3,但是因為原先項目版本的問題,未能整合成功。故整合 swagger2,文檔作用都一樣,就是頁面長得不一樣,可以放心使用。

添加依賴

我們在 pom.xml 中添加下面的依賴:

<!-- swagger -->
<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>
<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>swagger-bootstrap-ui</artifactId>
    <version>1.9.6</version>
</dependency>

并在配置文件中添加配置:

spring.mvc.pathmatch.matching-strategy=ANT_PATH_MATCHER

引入配置

在包 com.launch.config 中添加 SwaggerConfig.java 類:

swagger_class.png

package com.launch.config;
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 SwaggerConfig {
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.launch.controller")) // 接口所在的包
                .paths(PathSelectors.any())
                .build();
    }
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("Launch 系統(tǒng)") // 標題
                .description("Jimmy Control System") // 描述
                .version("1.0.0") // 版本
                // 姓名,聯(lián)系 link,郵箱
                .contact(new Contact("Jimmy", "https://juejin.cn/user/1996368846261294", "reng99@outlook.com"))
                .build();
    }
}

到此,我們運行項目,打開連接 http://localhost:8080/swagger-ui/index.html ,咦, 404 耶~

404.png

處理 404

版本的問題,使得我們無法讀取 swagger 包下面的頁面。那么,我們來重寫。

我們在 com.launch.config 中新增 WebMvcConfig.java 文件:

package com.launch.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
        registry.addResourceHandler("swagger-ui.html")
                .addResourceLocations("classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**")
                .addResourceLocations("classpath:/META-INF/resources/webjars/");
        registry.addResourceHandler("doc.html")
                .addResourceLocations("classpath:/META-INF/resources/");
    }
}

重新啟動,訪問路徑 http://localhost:8080/doc.html ,就可以看到效果。

接口信息dashboard.png

在本文淺聊一下Spring Security的使用方法 中,我們已經(jīng)開發(fā)好了六個接口。點擊進入其中一個,比如 queryAll 查詢所有用戶的接口,可看到其文檔:

接口文檔.png

我們還可以對該接口進行調(diào)試:

調(diào)試.png

感興趣的讀者可以自行嘗試。

以上就是SpringBoot整合Swagger接口文檔工具的流程步驟的詳細內(nèi)容,更多關(guān)于SpringBoot整合Swagger的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 使用Java實現(xiàn)讀取手機文件名稱

    使用Java實現(xiàn)讀取手機文件名稱

    這篇文章主要為大家詳細介紹了如何使用Java實現(xiàn)讀取手機文件名稱,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-03-03
  • 開發(fā)者必讀:揭秘Python與Java的性能較量

    開發(fā)者必讀:揭秘Python與Java的性能較量

    本文將探討這兩種流行的編程語言之間的性能差異,無論你是剛剛?cè)腴T編程還是已經(jīng)有一定經(jīng)驗,這個指南都將幫助你了解Python和Java在執(zhí)行速度、內(nèi)存管理以及擴展性方面的不同,通過比較這兩種語言的特點和優(yōu)勢,你將能夠更好地選擇適合自己項目需求的編程語言,讓我們開始吧!
    2023-12-12
  • Java反射之靜態(tài)加載和動態(tài)加載的簡單實例

    Java反射之靜態(tài)加載和動態(tài)加載的簡單實例

    下面小編就為大家?guī)硪黄狫ava反射之靜態(tài)加載和動態(tài)加載的簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-10-10
  • SpringBoot項目配置數(shù)據(jù)庫密碼加密相關(guān)代碼

    SpringBoot項目配置數(shù)據(jù)庫密碼加密相關(guān)代碼

    這篇文章主要介紹了SpringBoot項目配置數(shù)據(jù)庫密碼加密的相關(guān)資料,本文介紹了在Springboot項目中配置數(shù)據(jù)庫連接時存在的安全問題,即用戶名和密碼以明文形式存儲,容易泄露,提出了一種簡單的加密方案,需要的朋友可以參考下
    2024-11-11
  • Spring @Profile注解詳解

    Spring @Profile注解詳解

    這篇文章主要介紹了Spring @Profile注解詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • resty client使用Java客戶端來訪問Api

    resty client使用Java客戶端來訪問Api

    這篇文章主要介紹了resty-client使用Java客戶端來訪問Api的驗證權(quán)限,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-03-03
  • 詳解eclipse中Maven工程使用Tomcat7以上插件的方法

    詳解eclipse中Maven工程使用Tomcat7以上插件的方法

    本篇文章主要介紹了詳解eclipse中Maven工程使用Tomcat7以上插件的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • spring mvc中@RequestBody注解的作用說明

    spring mvc中@RequestBody注解的作用說明

    這篇文章主要介紹了spring mvc中@RequestBody注解的作用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • redis防止重復(fù)提交的實現(xiàn)示例

    redis防止重復(fù)提交的實現(xiàn)示例

    在開發(fā)中我們都需要處理重復(fù)提交的問題,本文主要介紹了redis防止重復(fù)提交的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2024-06-06
  • SpringBoot配置加載,各配置文件優(yōu)先級對比方式

    SpringBoot配置加載,各配置文件優(yōu)先級對比方式

    這篇文章主要介紹了SpringBoot配置加載,各配置文件優(yōu)先級對比方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08

最新評論