最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

詳細SpringBoot框架教程——SpringBoot集成Swagger

2021-03-30 16:57 作者:動力節(jié)點小王本王  | 我要投稿




SpringBoot集成swagger

說到swagger(絲襪哥),首先了解一下OpenAPI規(guī)范(OpenAPI Specification 簡稱OAS)是Linux基金會的一個項目,試圖通過定義一種用來描述API格式或API定義的語言,來規(guī)范RESTful服務開發(fā)過程,目前版本是V3.0,并且已經發(fā)布并開源在github上。(https://github.com/OAI/OpenAPI-Specification;

swagger是目前最受歡迎的OpenAPI規(guī)范(OAS)開發(fā)工具框架,支持從設計和文檔到測試和部署的整個API生命周期的開發(fā);

wagger官網:https://swagger.io/?是一個開源項目,也就是提供jar包);

swagger2 版本:1.x,2.x,現在都用2.x;

Spring Boot集成swagger,可以很方便地在springboot中使用swagger生成api接口文檔;

swagger的作用

隨項目自動生成強大RESTful API文檔,減少開發(fā)人員工作量;(不需要自己寫api接口文檔了),使用swagger,只需要在代碼中添加一些注解即可生成API接口文檔,便于同步更新API文檔的說明,當然也有人詬病說這種方式與代碼耦合在一起,智者見智仁者見仁;

另外生成的api文檔頁面帶有測試功能,可以用來調試每個RESTful API接口;

怎么集成?

springboot集成第三方組件一般情況下是三個步驟:

1、加依賴(可能是starter);

2、配置application.properties文件;

3、寫代碼;

所以:

1、添加相關依賴

1、配置文件(暫時不需要在application.properties配置)

2、編寫相關代碼,需要用到一些注解;

紅色的這些都是swagger的注解;

然后在spring ioc容器中配置創(chuàng)建一個Docket對象;

具體參考課堂上的樣例代碼;

完成后訪問:http://localhost:8080/swagger-ui.html?得到API文檔;(如果有項目上下文地址要帶上項目上下文

說明:2.10.5?這個版本目前使用的時候有點問題,后續(xù)再看一下;

接口api的數據查看:http://localhost:8080/24-springboot/v2/api-docs

swagger常用注解:

  • @Api:用在類上,說明該類的作用;

  • @ApiOperation:用在方法上,說明方法的作用;

  • @ApiImplicitParams:用在方法上包含一組參數說明;

  • @ApiImplicitParam:用在@ApiImplicitParams注解中,指定一個請求參數的各個方面:

  • paramType:參數放在哪個地方;

  • header-->請求參數的獲?。篅RequestHeader;

  • query-->請求參數的獲?。篅RequestParam;

  • path-->請求參數的獲取:@PathVariable (用于restful接口);

  • body(不常用);

  • form(不常用);

  • name:?參數名;

  • dataType:參數類型;

  • required:參數是否必須傳;

  • value:參數的意思;

  • defaultValue:參數的默認值;

  • @ApiResponses:用于表示一組響應;

  • @ApiResponse:用在@ApiResponses中,一般用于表達一個錯誤的響應信息;

  • code:數字,例如400;

  • message:信息,例如?"請求參數不合法";

  • response:拋出異常的類;

  • @ApiIgnore:使用該注解忽略這個API,在頁面上不顯示;

  • @ApiModel:描述一個Model的信息;

  • @ApiModelProperty:描述一個model的屬性;

注解可參考官方:https://github.com/swagger-api/swagger-core/wiki/Annotations?

WebJars是將Web前端Javascript和CSS等資源打包成Java的Jar包,這樣在Java Web開發(fā)中我們可以借助Maven這些依賴庫的管理,保證這些Web資源版本唯一性;

swagger安全問題: 正式上線的時候,建議關閉swagger

在配置文件配置一個開關:開啟或關閉:

springfox與swagger的關系

swagger是一個流行的API開發(fā)框架,這個框架實現了“開放API聲明”(OpenAPI Specification,OAS)規(guī)范;

由于Spring的流行,Marty Pitt編寫了一個基于Spring的組件swagger-springmvc,用于將swagger集成到springmvc中來,而springfox則是從swagger-springmvc這個組件發(fā)展而來,同時springfox也是一個新的

項目,目前新的項目中都是使用springfox-swagger2,其實在一些比較老的項目中可能還會用swagger-springmvc;

springfox-swagger2依然是實現OSA規(guī)范,生成一個描述API的json文件,,另外一個組件springfox-swagger-ui就是將這個json文件解析出來,用一種更友好的頁面效果方式呈現出來;

Lombok介紹

lombok就是一個jar包,加到項目中;

使用lombok的步驟如下:

1、加入lombok的依賴;

<!--lombok-->
<dependency>
????<groupId>org.projectlombok</groupId>
????<artifactId>lombok</artifactId>
????<version>1.18.12</version>
</dependency>

2、Idea工具需要改一個配置;

3、寫代碼的時候,在代碼上加一些lombok的注解;常用的注解:

@NoArgsConstructor
@Getter
@Setter
@Data

如果想更深入的學習springboot,奉上springboot全套視頻教程,視頻學習效果更佳,走過路過別忘素質三連哦~~

詳細SpringBoot框架教程——SpringBoot集成Swagger的評論 (共 條)

分享到微博請遵守國家法律
彰武县| 锡林郭勒盟| 新安县| 金堂县| 宣恩县| 建阳市| 桦甸市| 瓦房店市| 成安县| 金塔县| 孝昌县| 平山县| 都昌县| 会宁县| 阳西县| 峨眉山市| 伊川县| 涟水县| 滦平县| 栖霞市| 成武县| 岳阳市| 澄迈县| 鄂州市| 贵南县| 贵德县| 容城县| 沂水县| 奉节县| 察哈| 林芝县| 绥德县| 丰宁| 手游| 孝昌县| 苏尼特左旗| 博兴县| 长春市| 东明县| 平凉市| 和顺县|