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

教你怎么用SpringBoot整合Swagger作為API

 更新時(shí)間:2021年05月07日 15:05:40   作者:鍵盤歌唱家  
這篇文章主要介紹了教你怎么用SpringBoot整合Swagger作為API,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們有很好的幫助,需要的朋友可以參考下

前言

相信無(wú)論是前端還是后端開(kāi)發(fā),都或多或少地被接口文檔折磨過(guò)。前端經(jīng)常抱怨后端給的接口文檔與實(shí)際情況不一致。后端又覺(jué)得編寫及維護(hù)接口文檔會(huì)耗費(fèi)不少精力,經(jīng)常來(lái)不及更新。其實(shí)無(wú)論是前端調(diào)用后端,還是后端調(diào)用后端,都期望有一個(gè)好的接口文檔。但是這個(gè)接口文檔對(duì)于程序員來(lái)說(shuō),就跟注釋一樣,經(jīng)常會(huì)抱怨別人寫的代碼沒(méi)有寫注釋,然而自己寫起代碼起來(lái),最討厭的,也是寫注釋。所以僅僅只通過(guò)強(qiáng)制來(lái)規(guī)范大家是不夠的,隨著時(shí)間推移,版本迭代,接口文檔往往很容易就跟不上代碼了。而自動(dòng)生成接口文檔的框架就是我們今天的主角Swagger!

一、基本使用

使用時(shí)需要導(dǎo)入下面的依賴:

<!--引入swagger,自動(dòng)生成api說(shuō)明文檔-->
        <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>

然后書寫下面的配置類即可完成配置!

@Configuration
@EnableSwagger2 //開(kāi)啟swagger2
public class SwaggerConfig {
}

瀏覽器訪問(wèn)http://localhost:8910/swagger-ui.html,即可可以看到下面的界面:

在這里插入圖片描述

二、自定義描述內(nèi)容

@Configuration
@EnableSwagger2 //開(kāi)啟swagger2
public class SwaggerConfig {
    @Bean
    public Docket docket(){
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                //是否啟動(dòng)swagger
//                .enable(false)
                .groupName("盧澤龍")
                .select()
                //RequestHandlerSelectors:配置要掃描的接口方式
//                    basePackage : 指定要掃描的包
                    .apis(RequestHandlerSelectors.basePackage("org.lzl.laboratory.controller"))
//                    any:掃描全部
//                    .apis(RequestHandlerSelectors.any())
//                    none:不掃描
//                    .apis(RequestHandlerSelectors.none())
//                    withClassAnnotation:掃描類上的注解
//                    .apis(RequestHandlerSelectors.withClassAnnotation(RestController.class))
//                    withMethodAnnotation:掃描方法上的注解
//                    .apis(RequestHandlerSelectors.withMethodAnnotation(GetMapping.class))
                //path() 過(guò)濾什么路徑
//                    .paths(PathSelectors.ant("/lzl/**"))
                .build();
    }

 //配置swagger信息 ==> apiInfo
    private ApiInfo apiInfo(){
        //作者信息
        Contact contact = new Contact("盧澤龍","https://blog.csdn.net/MoastAll","382491212@qq.com");

        return new ApiInfo(
                "云上實(shí)驗(yàn)室的API文檔說(shuō)明",
                "abcdefg",
                "v1.0",
                "https://blog.csdn.net/MoastAll",
                contact,
                "Apache 2.0",
                "http://www.apache.org/licenses/LICENSE-2.0",
                new ArrayList()
        );
    }
 }

其中如果有這樣的需求:在dev,test環(huán)境中開(kāi)啟swagger,其他環(huán)境不開(kāi)啟swagger,我們只需要給Docket加上下面的environment參數(shù),再用acceptsProfiles方法來(lái)判斷環(huán)境是否符合要求!

在這里插入圖片描述

使用的效果為:

在這里插入圖片描述

三、給下面的models和接口一些提示信息

1.給實(shí)體類加入下面的注解

在這里插入圖片描述

http://localhost:8910/swagger-ui.html的models就會(huì)呈現(xiàn)下面的界面:

在這里插入圖片描述

2.給controller加上下面的注解

在這里插入圖片描述

就會(huì)出現(xiàn)下面的提示信息:

在這里插入圖片描述

到此這篇關(guān)于教你怎么用SpringBoot整合Swagger作為API的文章就介紹到這了,更多相關(guān)SpringBoot整合Swagger作為API內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • RocketMQ設(shè)計(jì)之故障規(guī)避機(jī)制

    RocketMQ設(shè)計(jì)之故障規(guī)避機(jī)制

    這篇文章主要介紹了RocketMQ設(shè)計(jì)之故障規(guī)避機(jī)制,故障規(guī)避機(jī)制就是用來(lái)解決當(dāng)Broker出現(xiàn)故障,Producer不能及時(shí)感知而導(dǎo)致消息發(fā)送失敗的問(wèn)題,下面詳細(xì)介紹需要的小伙伴可以參考一下
    2022-03-03
  • java微信開(kāi)發(fā)API第一步 服務(wù)器接入

    java微信開(kāi)發(fā)API第一步 服務(wù)器接入

    這篇文章主要為大家分享了java微信開(kāi)發(fā)API的第一步操作服務(wù)器接入,感興趣的小伙伴們可以參考一下
    2016-05-05
  • IDEA2022 提示更新 TKK失敗請(qǐng)檢查網(wǎng)絡(luò)連接的問(wèn)題

    IDEA2022 提示更新 TKK失敗請(qǐng)檢查網(wǎng)絡(luò)連接的問(wèn)題

    這篇文章主要介紹了IDEA2022 提示:更新 TKK 失敗,請(qǐng)檢查網(wǎng)絡(luò)連接,本文給大家分享解決方案,對(duì)idea2022提示更新TKK失敗感興趣的朋友跟隨小編一起看看吧
    2022-11-11
  • 使用filter實(shí)現(xiàn)url級(jí)別內(nèi)存緩存示例

    使用filter實(shí)現(xiàn)url級(jí)別內(nèi)存緩存示例

    這篇文章主要介紹了使用filter實(shí)現(xiàn)url級(jí)別內(nèi)存緩存示例,只需要一個(gè)靜態(tài)類,在filter中調(diào)用,也可以全部寫到filt里面??梢愿鶕?jù)查詢參數(shù)分別緩存,需要的朋友可以參考下
    2014-03-03
  • springboot多項(xiàng)目結(jié)構(gòu)實(shí)現(xiàn)

    springboot多項(xiàng)目結(jié)構(gòu)實(shí)現(xiàn)

    本文主要介紹了springboot多項(xiàng)目結(jié)構(gòu)實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • java實(shí)現(xiàn)賬號(hào)登錄時(shí)發(fā)送郵件通知

    java實(shí)現(xiàn)賬號(hào)登錄時(shí)發(fā)送郵件通知

    這篇文章主要為大家詳細(xì)介紹了java如何實(shí)現(xiàn)在賬號(hào)登錄時(shí)發(fā)送郵件通知的功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-09-09
  • Spring?boot?整合Logback過(guò)程示例解析

    Spring?boot?整合Logback過(guò)程示例解析

    這篇文章主要為大家介紹了Spring?boot?整合Logback的過(guò)程及示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • Java中輸出字符的ASCII值實(shí)例

    Java中輸出字符的ASCII值實(shí)例

    這篇文章主要介紹了Java中輸出字符的ASCII值實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-08-08
  • SpringBoot自動(dòng)配置特點(diǎn)與原理詳細(xì)分析

    SpringBoot自動(dòng)配置特點(diǎn)與原理詳細(xì)分析

    這篇文章主要介紹了SpringBoot自動(dòng)配置原理分析,SpringBoot是我們經(jīng)常使用的框架,那么你能不能針對(duì)SpringBoot實(shí)現(xiàn)自動(dòng)配置做一個(gè)詳細(xì)的介紹。如果可以的話,能不能畫一下實(shí)現(xiàn)自動(dòng)配置的流程圖。牽扯到哪些關(guān)鍵類,以及哪些關(guān)鍵點(diǎn)
    2022-08-08
  • Java編程經(jīng)典小游戲設(shè)計(jì)-打磚塊小游戲源碼

    Java編程經(jīng)典小游戲設(shè)計(jì)-打磚塊小游戲源碼

    這篇文章主要介紹了Java編程經(jīng)典小游戲設(shè)計(jì)-打磚塊小游戲源碼,還是挺不錯(cuò)的,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11

最新評(píng)論