亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

實(shí)戰(zhàn)分布式醫(yī)療掛號(hào)系統(tǒng)之整合Swagger2到通用模塊

 更新時(shí)間:2022年04月24日 15:44:09   作者:Hudie.  
這篇文章主要為大家介紹了實(shí)戰(zhàn)分布式醫(yī)療掛號(hào)系統(tǒng)之整合Swagger2到通用模塊,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

文章導(dǎo)讀

本系列文章介紹從0開始搭建一個(gè)基于分布式的醫(yī)療掛號(hào)系統(tǒng)。本次四篇文章完成了醫(yī)院設(shè)置微服務(wù)模塊的后端接口,為了方便開發(fā),對(duì)接口的返回結(jié)果、全局異常、全局日志進(jìn)行了統(tǒng)一處理。 同時(shí),為了方便進(jìn)行訪問測(cè)試,還整合了Swagger2工具,這些通用的模塊中,除了全局日志被放在醫(yī)院設(shè)置微服務(wù)模塊的配置資源中,其余都統(tǒng)一被抽取在common模塊中。具體實(shí)現(xiàn)可參考下面文章:

醫(yī)院設(shè)置微服務(wù) | 模塊搭建

醫(yī)院設(shè)置微服務(wù) | 接口開發(fā)

通用模塊 | 統(tǒng)一返回結(jié)果、統(tǒng)一異常處理、統(tǒng)一日志處理

項(xiàng)目已開源至  https://github.com/Guoqianliang/yygh_parent

在使用REST風(fēng)格進(jìn)行接口的開發(fā)測(cè)試時(shí),post請(qǐng)求無(wú)法使用瀏覽器直接進(jìn)行訪問測(cè)試,目前流行的解決方案是使用Swagger2。Swagger2是一個(gè)API接口文檔,通過Swagger2可以方便各種提交方式的接口測(cè)試。

通過Swagger2,我們可以看到接口名稱、請(qǐng)求方法、傳遞參數(shù)、返回信息等。

通用模塊整合swagger2步驟

本項(xiàng)目中,眾多的微服務(wù)都需要整合Swagger2,所以我將其依賴引入在了通用的common父模塊中,配置在common_util模塊中。

1.引入swagger依賴

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

2.配置Swagger2

如下的Swagger2配置信息中分別創(chuàng)建了webApi分組和adminApi分組的Bean。

/**
 * Swagger2配置信息
 */
@Configuration
@EnableSwagger2
public class Swagger2Config {
    @Bean
    public Docket webApiConfig() {
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("webApi")
                .apiInfo(webApiInfo())
                .select()
                //只顯示api路徑下的頁(yè)面
                .paths(Predicates.and(PathSelectors.regex("/api/.*")))
                .build();
    }
    @Bean
    public Docket adminApiConfig() {
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("adminApi")
                .apiInfo(adminApiInfo())
                .select()
                //只顯示admin路徑下的頁(yè)面
                .paths(Predicates.and(PathSelectors.regex("/admin/.*")))
                .build();
    }
    private ApiInfo webApiInfo() {
        return new ApiInfoBuilder()
                .title("網(wǎng)站-API文檔")
                .description("本文檔描述了網(wǎng)站微服務(wù)接口定義")
                .version("1.0")
                .contact(new Contact("gql", "http://gql.com", "guoqianliang@foxmail.com"))
                .build();
    }
    private ApiInfo adminApiInfo() {
        return new ApiInfoBuilder()
                .title("后臺(tái)管理系統(tǒng)-API文檔")
                .description("本文檔描述了后臺(tái)管理系統(tǒng)微服務(wù)接口定義")
                .version("1.0")
                .contact(new Contact("gql", "http://gql.com", "guoqianliang@foxmail.com"))
                .build();
    }
}

3.啟動(dòng)類添加包掃描

Swagger2的配置類寫好了,現(xiàn)在需要在service_host模塊使用配置類。由于二者不在同一個(gè)項(xiàng)目中,所以需要在service_host模塊的父模塊的pom中引入service_util。

而兩者包名不同,還需要額外在啟動(dòng)類上添加包掃描。

引入swagger配置類

測(cè)試

項(xiàng)目啟動(dòng)后訪問:http://localhost:8201/swagger-ui.html ,可以看到項(xiàng)目中接口的信息:

通過swagger查看后臺(tái)API文檔

在Controller中添加下面幾個(gè)簡(jiǎn)單的Api注解,可以將swagger中的一些信息定義為中文:

通過swagger添加注解

如果需要測(cè)試接口,我們只需要點(diǎn)擊接口下方的Try it out 按鈕:

通過swagger測(cè)試方法

點(diǎn)擊按鈕后即可,看到接口的一系列返回信息:

通過swagger查看方法返回結(jié)果

swagger常用注解

注解說(shuō)明
@Api修飾整個(gè)類,描述Controller的作用
@ApiOperation描述一個(gè)類的一個(gè)方法,或者說(shuō)一個(gè)接口
@ApiParam單個(gè)參數(shù)描述
@ApiModel用對(duì)象來(lái)接收參數(shù)
@ApiModelProperty用對(duì)象接收參數(shù)時(shí),描述對(duì)象的一個(gè)字段
@ApiImplicitParam一個(gè)請(qǐng)求參數(shù)
@ApiImplicitParams多個(gè)請(qǐng)求參數(shù)

以上就是實(shí)戰(zhàn)分布式醫(yī)療掛號(hào)系統(tǒng)之整合Swagger2到通用模塊的詳細(xì)內(nèi)容,更多關(guān)于分布式醫(yī)療掛號(hào)整合Swagger2模塊的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Java數(shù)組添加元素實(shí)例

    Java數(shù)組添加元素實(shí)例

    這篇文章主要介紹了Java數(shù)組添加元素實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • SpringBoot?spring.factories加載時(shí)機(jī)分析

    SpringBoot?spring.factories加載時(shí)機(jī)分析

    這篇文章主要為大家介紹了SpringBoot?spring.factories加載時(shí)機(jī)分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • MyBatis流式查詢的項(xiàng)目實(shí)踐

    MyBatis流式查詢的項(xiàng)目實(shí)踐

    本文主要介紹了MyBatis流式查詢的項(xiàng)目實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • java教程之對(duì)象序列化使用基礎(chǔ)示例詳解

    java教程之對(duì)象序列化使用基礎(chǔ)示例詳解

    所謂對(duì)象序列化就是將對(duì)象的狀態(tài)轉(zhuǎn)換成字節(jié)流,以后可以通過這些值再生成相同狀態(tài)的對(duì)象,下面詳細(xì)介紹一下java對(duì)象的序列化使用方法
    2014-01-01
  • 一文讀懂JAVA中HttpURLConnection的用法

    一文讀懂JAVA中HttpURLConnection的用法

    這篇文章主要介紹了JAVA中的HttpURLConnection用法,文中講解非常細(xì)致,供大家參考和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • Mybatis generator如何自動(dòng)生成代碼

    Mybatis generator如何自動(dòng)生成代碼

    這篇文章主要介紹了Mybatis generator如何自動(dòng)生成代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-12-12
  • java實(shí)現(xiàn)求只出現(xiàn)一次的數(shù)字

    java實(shí)現(xiàn)求只出現(xiàn)一次的數(shù)字

    本文主要介紹了java實(shí)現(xiàn)求只出現(xiàn)一次的數(shù)字,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • 淺談Java轉(zhuǎn)義符\\|

    淺談Java轉(zhuǎn)義符\\|

    java中\(zhòng)需要用\\來(lái)表示吧這個(gè)你應(yīng)該知道,而split中傳入的參數(shù)是什么呢 他并不是普通的字符串 你可以查一下api文檔 它要求傳入的是正則表達(dá)式 而正則表達(dá)式也需要這個(gè)\所以在這里有這個(gè)\\
    2015-06-06
  • 解決springboot項(xiàng)目找不到resources目錄下的資源問題

    解決springboot項(xiàng)目找不到resources目錄下的資源問題

    這篇文章主要介紹了解決springboot項(xiàng)目找不到resources目錄下的資源問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • java遍歷http請(qǐng)求request的所有參數(shù)實(shí)現(xiàn)方法

    java遍歷http請(qǐng)求request的所有參數(shù)實(shí)現(xiàn)方法

    下面小編就為大家?guī)?lái)一篇java遍歷http請(qǐng)求request的所有參數(shù)實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2016-09-09

最新評(píng)論