spring boot 集成 swagger3及配置方法
Swagger 3是一種開源的API描述工具,它可以幫助開發(fā)人員設(shè)計(jì)、構(gòu)建、文檔化和測試API。Swagger 3支持多種編程語言和框架,包括Java、Node.js、Python、Ruby等,并提供了許多集成工具和插件,例如Postman、Apigee等。 Swagger 3使用OpenAPI規(guī)范來描述API,這是一種通用的API描述語言,適用于各種編程語言和框架。OpenAPI規(guī)范定義了API的基本結(jié)構(gòu)、請(qǐng)求和響應(yīng)的參數(shù)、頭部信息、路徑、HTTP方法和安全方案等。通過使用Swagger 3,開發(fā)人員可以從API文檔中快速了解API的特點(diǎn)和功能,有效簡化了API的構(gòu)建維護(hù)。 在使用Swagger 3時(shí),您需要在項(xiàng)目中添加Swagger 3依賴項(xiàng),并配置好Swagger 3配置文件。然后您可以使用注釋標(biāo)記您的API端點(diǎn)以及請(qǐng)求和響應(yīng)類和字段等,Swagger 3會(huì)根據(jù)這些注釋生成API文檔并提供UI界面進(jìn)行瀏覽和測試等操作。
引入依賴
注:不需要額外依賴,只需要下面一個(gè)就能完成
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-boot-starter</artifactId> <version>3.0.0</version> </dependency>
配置文件
?spring: mvc: pathmatch: matching-strategy: ant_path_matcher
swagger配置類
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 java.util.ArrayList; /** * swagger配置 */ @Configuration public class SwaggerConfig { Boolean swaggerEnabled = true; @Bean public Docket createRestApi() { return new Docket(DocumentationType.OAS_30) .apiInfo(apiInfo()) // 是否開啟 .enable(swaggerEnabled)//true .select() .apis(RequestHandlerSelectors.basePackage("com.***.***")//配置掃描的路徑 .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("****接口文檔") .contact(new Contact("clc", "http://www.baidu.com", "clc@x.com")) .version("1.0") .description("基本的一些接口說明") .license("Apache 2.0 許可") // 許可 .licenseUrl("https://www.apache.org/licenses/LICENSE-2.0") // 許可鏈接 .extensions(new ArrayList<>()) // 拓展 .build(); } }
常用注解
Swagger3 常用注解 | 使用位置 |
@Api | 在 Java 類上添加該注解。 |
@ApiOperation | 在 Java 類的方法上添加該注解。 |
@ApiParam | 在 Java 類的方法參數(shù)上添加該注解。 |
@ApiResponses | 在 Java 類的方法上添加該注解。 |
@ApiSecurity | 在 Java 類的方法上添加該注解。 |
@ApiModel | 在 Java 類的方法參數(shù)或返回值上添加該注解。 |
@ApiImplicitParams | 在 Java 類的方法參數(shù)上添加該注解。 |
@ApiHeader | 在 Java 類的方法參數(shù)或返回值上添加該注解。 |
@ApiFormData | 在 Java 類的方法參數(shù)或返回值上添加該注解。 |
@ApiUseDefaultValues | 在 Java 類的方法參數(shù)上添加該注解。 |
請(qǐng)求地址:http://localhost:端口/swagger-ui/index.html
到此這篇關(guān)于spring boot 集成 swagger3的文章就介紹到這了,更多相關(guān)spring boot 集成 swagger3內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java SSM整合開發(fā)統(tǒng)一結(jié)果封裝詳解
這篇文章主要介紹了Java SSM整合開發(fā)實(shí)現(xiàn)統(tǒng)一結(jié)果封裝,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08JavaEE實(shí)現(xiàn)前后臺(tái)交互的文件上傳與下載
這篇文章主要介紹了JavaEE實(shí)現(xiàn)前后臺(tái)交互的文件上傳與下載,分享相關(guān)技術(shù),實(shí)現(xiàn)文件上傳下載功能,需要的朋友可以參考下2015-11-11MyBatis 接收數(shù)據(jù)庫中沒有的字段的解決
這篇文章主要介紹了MyBatis 接收數(shù)據(jù)庫中沒有的字段的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03Spring?session?redis?修改默認(rèn)的序列化方法(案例)
這篇文章主要介紹了Spring?session?redis?修改默認(rèn)的序列化方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04Eclipse Debug模式的開啟與關(guān)閉問題簡析
這篇文章主要介紹了Eclipse Debug模式的開啟與關(guān)閉問題簡析,同時(shí)向大家介紹了一個(gè)簡單的debug模式啟動(dòng)不起來的解決方法,希望對(duì)大家有所幫助。2017-10-10關(guān)于ThreadLocal和InheritableThreadLocal解析
這篇文章主要介紹了關(guān)于ThreadLocal和InheritableThreadLocal解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03Eclipse不自動(dòng)編譯java文件的終極解決方法
這篇文章主要介紹了Eclipse不自動(dòng)編譯java文件的終極解決方法,需要的朋友可以參考下2015-12-12SpringCloud zookeeper作為注冊(cè)中心使用介紹
ZooKeeper由雅虎研究院開發(fā),是Google Chubby的開源實(shí)現(xiàn),后來托管到Apache,于2010年11月正式成為Apache的頂級(jí)項(xiàng)目。ZooKeeper是一個(gè)經(jīng)典的分布式數(shù)據(jù)一致性解決方案,致力于為分布式應(yīng)用提供一個(gè)高性能、高可用,且具有嚴(yán)格順序訪問控制能力的分布式協(xié)調(diào)服務(wù)2022-11-11