springboot項(xiàng)目中使用Swagger的簡(jiǎn)單示例
1、Swagger是啥
Swagger 是一個(gè)用于生成、描述和調(diào)用 RESTful 接口的 Web 服務(wù)。通俗的來(lái)講,Swagger 就是將項(xiàng)目中所有(想要暴露的)接口展現(xiàn)在頁(yè)面上,并且可以進(jìn)行接口調(diào)用和測(cè)試的服務(wù)。 Swagger 官網(wǎng)地址:https://swagger.io/
2、Swagger有什么用?
Swagger 有以下 3 個(gè)重要的作用:將項(xiàng)目中所有的接口展現(xiàn)在頁(yè)面上,這樣后端程序員就不需要專門為前端使用者編寫專門的接口文檔;當(dāng)接口更新之后,只需要修改代碼中的 Swagger 描述就可以實(shí)時(shí)生成新的接口文檔了,從而規(guī)避了接口文檔老舊不能使用的問(wèn)題;通過(guò) Swagger 頁(yè)面,我們可以直接進(jìn)行接口調(diào)用,方便我們開(kāi)發(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)建一個(gè)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)建一個(gè)Swagger配置類SwaggerConfig類
@Configuration @EnableSwagger2//開(kāi)始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保存的名字是哪個(gè)就可以寫成那個(gè) .modelRef(new ModelRef("string")).parameterType("header") .required(false).build(); //header中的ticket參數(shù)非必填,傳空也可以 pars.add(ticketPar.build()); //根據(jù)每個(gè)方法名也知道當(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)
5、通過(guò)網(wǎng)址訪問(wèn)網(wǎng)頁(yè)
在完成以上步驟之后點(diǎn)擊運(yùn)行,等運(yùn)行完后再在瀏覽器中訪問(wèn)以下網(wǎng)址:
http://127.0.0.1:8080/swagger-ui.html#/
這里的端口要改為自己的端口。
效果如圖所示
總結(jié)
到此這篇關(guān)于springboot項(xiàng)目中使用Swagger的文章就介紹到這了,更多相關(guān)springboot項(xiàng)目使用Swagger內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解JDBC的概念及獲取數(shù)據(jù)庫(kù)連接的5種方式
Java?DataBase?Connectivity是將Java與SQL結(jié)合且獨(dú)立于特定的數(shù)據(jù)庫(kù)系統(tǒng)的應(yīng)用程序編程接口,一種可用于執(zhí)行SQL語(yǔ)句的JavaAPI。本文主要介紹了JDBC的概念及獲取數(shù)據(jù)庫(kù)連接的5種方式,需要的可以參考一下2022-09-09java針對(duì)電話號(hào)碼正則匹配實(shí)例
這篇文章主要介紹了java針對(duì)電話號(hào)碼正則匹配的方法,涉及java正則匹配與字符串操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07spring boot 開(kāi)發(fā)soap webservice的實(shí)現(xiàn)代碼
這篇文章主要介紹了spring boot 開(kāi)發(fā)soap webservice的實(shí)現(xiàn)代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01java對(duì)list<Object>進(jìn)行手動(dòng)分頁(yè)實(shí)現(xiàn)
本文主要介紹了java對(duì)list<Object>進(jìn)行手動(dòng)分頁(yè)實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07Java8中Stream流求最大值最小值的實(shí)現(xiàn)示例
本文主要介紹了Java8中Stream流求最大值最小值的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04springboot熱部署知識(shí)點(diǎn)總結(jié)
在本篇文章里小編給大家整理了關(guān)于springboot熱部署的知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們參考學(xué)習(xí)下。2019-06-06IDEA 2020.2 部署JSF項(xiàng)目的詳細(xì)過(guò)程
本文通過(guò)圖文并茂的形式教大家如何在IDEA中創(chuàng)建一個(gè)JSF項(xiàng)目及遇到問(wèn)題的解決方法,感興趣的朋友跟隨小編一起看看吧2021-09-09SpringBoot2.X Devtools熱部署實(shí)現(xiàn)解析
這篇文章主要介紹了SpringBoot2.X Devtools熱部署實(shí)現(xiàn)解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08springboot中@component注解的使用實(shí)例
這篇文章主要介紹了springboot中@component注解的使用實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03