溫馨提示×

溫馨提示×

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

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

springboot項(xiàng)目中怎么使用Swagger

發(fā)布時間:2023-04-04 10:38:19 來源:億速云 閱讀:82 作者:iii 欄目:開發(fā)技術(shù)

今天小編給大家分享一下springboot項(xiàng)目中怎么使用Swagger的相關(guān)知識點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

1、Swagger是啥

Swagger 是一個用于生成、描述和調(diào)用 RESTful 接口的 Web 服務(wù)。通俗的來講,Swagger 就是將項(xiàng)目中所有(想要暴露的)接口展現(xiàn)在頁面上,并且可以進(jìn)行接口調(diào)用和測試的服務(wù)。 

2、Swagger有什么用?

 Swagger 有以下 3 個重要的作用:將項(xiàng)目中所有的接口展現(xiàn)在頁面上,這樣后端程序員就不需要專門為前端使用者編寫專門的接口文檔;當(dāng)接口更新之后,只需要修改代碼中的 Swagger 描述就可以實(shí)時生成新的接口文檔了,從而規(guī)避了接口文檔老舊不能使用的問題;通過 Swagger 頁面,我們可以直接進(jìn)行接口調(diào)用,方便我們開發(fā)。

3、springboot中如何引入Swagger

1)在如依賴

        <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)創(chuàng)建一個controller類

import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
 
@RestController
public class TestController {
 
    @PostMapping("/hello")
    public String hello(String str){
        return "hello,"+str;
    }
}

3)再創(chuàng)建一個Swagger配置類SwaggerConfig類

@Configuration
@EnableSwagger2//開始Swagger2
public class SwaggerConfig {
 
 
    //配置了Swagger 的Docket的bean實(shí)例
    @Bean
    public Docket docket(){
 
        ParameterBuilder ticketPar = new ParameterBuilder();
        List<Parameter> pars = new ArrayList<>();
        ticketPar.name("Authorization").description("token")//Token 以及Authorization 為自定義的參數(shù),session保存的名字是哪個就可以寫成那個
                .modelRef(new ModelRef("string")).parameterType("header")
                .required(false).build(); //header中的ticket參數(shù)非必填,傳空也可以
        pars.add(ticketPar.build());    //根據(jù)每個方法名也知道當(dāng)前方法在設(shè)置什么參數(shù)
 
        return new Docket(DocumentationType.SPRING_WEB)
                .apiInfo(apiInfo())
                .select()
                //RequestHandlerSelectors, 配置要掃描接口的方式
                //basePackage:指定要掃描的包
                //any():掃描全部
                //withClassAnnotation: 掃描類上的注解
                //withMethodAnnotation: 掃描方法上的注解
                .apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller"))
                .build()
                .globalOperationParameters(pars);
    }
 
    //配置Swagger 信息=apiInfo
    private ApiInfo apiInfo(){
        return new ApiInfo(
                "Logistics Api",//文檔命名
                "test",//文檔描述
                "v1.0",//
                "http:127.0.0.1/",
                null,//contact
                "Apache 2.0",
                "http://www.apache.org/licenses/LICENSE-2.0",
                new ArrayList()
        );
    }
}

注意!

注意!

注意!

把a(bǔ)pis(RequestHandlerSelectors.basePackage("com.example.swagger.controller"))中的

“com.example.swagger.controller ”路徑寫成你自己的controller包的路徑

4、項(xiàng)目的總體結(jié)構(gòu)

springboot項(xiàng)目中怎么使用Swagger

5、通過網(wǎng)址訪問網(wǎng)頁

在完成以上步驟之后點(diǎn)擊運(yùn)行,等運(yùn)行完后再在瀏覽器中訪問以下網(wǎng)址:

http://127.0.0.1:8080/swagger-ui.html#/

這里的端口要改為自己的端口。

效果如圖所示

springboot項(xiàng)目中怎么使用Swagger

以上就是“springboot項(xiàng)目中怎么使用Swagger”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學(xué)習(xí)更多的知識,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI