精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Spring Boot 整合 Swagger3 指南

開發
Swagger 雖然升級了,但是我們在 Spring Boot 中卻依然可以使用老版本的 Swagger,今天我們就來看看,在 Spring Boot2.7.1 中如何使用 Swagger3。

Swagger 好早之前就更新到 3 了,不過一直沒空和小伙伴們分享下具體玩法,主要是也是因為 Swagger 雖然升級了,但是我們在 Spring Boot 中卻依然可以使用老版本的 Swagger,不過好像是從 Spring Boot2.6 開始,你會發現用不了老版本的 Swagger 了,哎,反正遲早都得搞,那不如就今天吧!

今天我們就來看看,在 Spring Boot2.7.1 中如何使用 Swagger3。

1. 依賴

首先我們創建一個 Spring Boot 項目,引入 Swagger3 依賴,如下:

<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>

以前在 Swagger2 的時代,這個依賴我們需要引入兩個,現在就只需要這一個即可。

2. 配置

接下來在啟動類上添加兩個注解,開啟 Swagger:

@SpringBootApplication
//開啟swagger
@EnableSwagger2
@EnableOpenApi
@EnableWebMvc
public class SwaggerDemoApplication {

public static void main(String[] args) {
SpringApplication.run(SwaggerDemoApplication.class, args);
}

}

現在,基本工作就已經完成了,此時即使我們不做任何額外的事情,Swagger 文檔也已經可以自動生成了。

啟動項目,瀏覽器輸入 http://localhost:8080/swagger-ui/index.html 查看 Swagger 文檔。

小伙伴們需要注意,這個默認的文檔訪問路徑跟以前的 Swagger2 不一樣哦!

現在掃描出來的接口中有一個是 BasicErrorController,這個是 Spring Boot 默認提供的異常處理器,因為我們現在沒有為 Swagger 設置包掃描路徑,所以就連同這個一起被掃描出來了。

好了,現在我們可以對這個網頁稍微做一些定制,如下:

@Configuration
public class Swagger2Config {

@Bean
Docket docket() {
return new Docket(DocumentationType.OAS_30)
//配置網站的基本信息
.apiInfo(new ApiInfoBuilder()
//網站標題
.title("TienChin項目在線接口文檔")
//標題后面的版本號
.version("v1.0")
.description("TienChin項目接口文檔")
//聯系人信息
.contact(new Contact("javaboy", "http://www.javaboy.org", "111@qq.com"))
.build())
.select()
//指定接口的位置
.apis(RequestHandlerSelectors.basePackage("org.javaboy.swagger_demo.controller"))
.build();
}
}

這段配置基本上和之前的 Swagger2 的一致,配置完成后,Swagger 頁面的基本信息就會更新過來。

3. 接口配置

接下來就是一些具體的接口配置了。

這個和 Swagger2 也基本一致,而且很容易懂,下面我來分別向小伙伴們舉例說明:

@RestController
@Api(tags = "用戶管理相關接口")
@RequestMapping("/user")
public class UserController {
@PostMapping("/")
@ApiOperation("添加用戶的接口")
@ApiImplicitParams({
@ApiImplicitParam(name = "username", value = "用戶名", defaultValue = "李四"),
@ApiImplicitParam(name = "address", value = "用戶地址", defaultValue = "深圳", required = true)
})
public RespBean addUser(String username, @RequestParam(required = true) String address) {
return new RespBean();
}
@GetMapping("/")
@ApiOperation("根據id查詢用戶的接口")
@ApiImplicitParam(name = "id", value = "用戶id", defaultValue = "99", required = true)
public User getUserById(@PathVariable Integer id) {
User user = new User();
user.setId(id);
return user;
}
@PutMapping("/{id}")
@ApiOperation("根據id更新用戶的接口")
public User updateUserById(@RequestBody User user) {
return user;
}
}

這里邊涉及到多個 API,我來向小伙伴們分別說明:

  • @Api 注解可以用來標記當前 Controller 的功能。
  • @ApiOperation 注解用來標記一個方法的作用。
  • @ApiImplicitParam 注解用來描述一個參數,可以配置參數的中文含義,也可以給參數設置默認值,這樣在接口測試的時候可以避免手動輸入。
  • 如果有多個參數,則需要使用多個 @ApiImplicitParam 注解來描述,多個 @ApiImplicitParam 注解需要放在一個 @ApiImplicitParams 注解中。
  • 需要注意的是,@ApiImplicitParam 注解中雖然可以指定參數是必填的,但是卻不能代替 @RequestParam(required = true) ,前者的必填只是在 Swagger 框架內必填,拋棄了 Swagger ,這個限制就沒用了,所以假如開發者需要指定一個參數必填, @RequestParam(required = true) 注解還是不能省略。
  • 如果參數是一個對象(例如上文的更新接口),對于參數的描述也可以放在實體類中。例如下面一段代碼:
@ApiModel
public class User {
@ApiModelProperty(value = "用戶id")
private Integer id;
@ApiModelProperty(value = "用戶名")
private String username;
@ApiModelProperty(value = "用戶地址")
private String address;
//getter/setter
}

好了,經過如上配置之后,接下來,刷新剛剛打開的頁面,可以看到如下效果:

圖片

可以看到,所有的接口這里都列出來了,包括接口請求方式,接口地址以及接口的名字等,點開一個接口,可以看到如下信息:

圖片

可以看到,接口的參數,參數要求,參數默認值等等統統都展示出來了,參數類型下的 query 表示參數以 key/value 的形式傳遞,點擊右上角的 Try it out,就可以進行接口測試:

圖片

點擊 Execute 按鈕,表示發送請求進行測試。測試結果會展示在下面的 Response 中。

小伙伴們注意,參數類型下面的 query 表示參數以 key/value 的形式傳遞,這里的值也可能是 body,body 表示參數以請求體的方式傳遞,例如上文的更新接口,如下:

圖片

當然還有一種可能就是這里的參數為 path,表示參數放在路徑中傳遞,例如根據 id 查詢用戶的接口:

圖片

當然,除了這些之外,還有一些響應值的注解,都比較簡單,小伙伴可以自己摸索下。

4. 在 Security 中的配置

如果我們的 Spring Boot 項目中集成了 Spring Security,那么如果不做額外配置,Swagger 文檔可能會被攔截,此時只需要在 Spring Security 的配置類中為 Swagger 相關的文件和接口放行即可(SpringBoot2.7.1 最新寫法):

@Configuration
public class SecurityConfig {
@Bean
WebSecurityCustomizer webSecurityCustomizer() {
return new WebSecurityCustomizer() {
@Override
public void customize(WebSecurity web) {
web.ignoring().antMatchers("/swagger-ui/**")
.antMatchers("/swagger-resources/**")
.antMatchers("/v3/**");
}
};
}
}

如此之后,Swagger 文件就不需要認證就能訪問了。不知道小伙伴們有沒有看懂呢?

責任編輯:趙寧寧 來源: 江南一點雨
相關推薦

2024-11-05 09:25:45

2025-07-02 07:33:02

Spring倒排索引分布式

2025-05-09 07:20:02

Spring數據庫檢索

2021-05-07 20:27:14

SpringBootSwagger3文檔

2021-04-13 07:29:13

Swagger3接口Postman

2022-12-23 08:28:42

策略模式算法

2017-04-17 10:35:40

Spring BooRedis 操作

2017-10-17 15:14:33

Spring BooThymeleafWeb

2022-06-28 15:04:32

容器Docker

2025-08-15 07:39:11

2022-06-28 15:06:35

容器Spring

2022-03-07 09:00:00

HTTPS證書中間件

2021-09-03 06:46:34

Spring 6pring Boot 項目

2021-09-15 09:02:20

Spring 6Spring BootJava

2024-03-26 08:08:08

SpringBPMN模型

2025-06-27 02:44:00

2022-07-27 10:39:14

Spring代碼IDEA

2022-05-06 10:42:09

JavaFlowable引擎

2020-06-24 09:35:50

SpringSpring BooJava

2025-03-26 03:25:00

SpringGuavaCaffeine
點贊
收藏

51CTO技術棧公眾號

91黑丝在线观看| 精品少妇一区二区三区在线播放| 日本不卡一区二区三区视频| 黄色网址中文字幕| 色综合久久一区二区三区| 欧美乱熟臀69xxxxxx| 天堂а√在线中文在线| 日韩欧美在线番号| 日本欧美一区二区| 欧美日韩第一页| a毛片毛片av永久免费| 日本精品久久| 五月婷婷综合网| 五月婷婷综合色| 亚洲精品一区二区口爆| 久久久久.com| 欧美巨猛xxxx猛交黑人97人| 亚洲精品女人久久久| 成人免费一区| 午夜精品国产更新| 一区二区三区四区| 天堂91在线| 久久精品国产77777蜜臀| 97久久国产精品| 亚洲午夜精品久久久久久高潮| 人人爱人人干婷婷丁香亚洲| 色综合天天综合色综合av| 日本高清xxxx| 搞黄视频免费在线观看| 成人福利在线看| 成人免费观看a| 老熟妇仑乱一区二区av| 国产伊人精品| 欧美成人一区在线| 女人黄色一级片| 久久久久久久久久久久久久久久久久久久| 欧美美女bb生活片| 国产免费人做人爱午夜视频| 美女尤物在线视频| 最近日韩中文字幕| 秋霞久久久久久一区二区| 国产小视频一区| 韩国精品免费视频| 国产精品永久免费在线| 一级做a爰片久久毛片| 99av国产精品欲麻豆| 美女999久久久精品视频| 波多野结衣欲乱| 欧美在线色图| 亚洲一区第一页| 性久久久久久久久久| 欧美激情极品| 亚洲成色777777女色窝| 中国男女全黄大片| 日韩美香港a一级毛片| 日本二三区不卡| 成人黄色片视频| 亚洲天堂av影院| 五月天一区二区| 国产素人在线观看| 成人bbav| 岛国av一区二区三区| 中文字幕色呦呦| 91极品在线| 亚洲一线二线三线久久久| 4444亚洲人成无码网在线观看| av在线下载| 樱桃国产成人精品视频| 日本a级片在线播放| 午夜小视频在线观看| 亚洲激情校园春色| 日本一本中文字幕| 美女高潮视频在线看| 欧美性xxxxx极品娇小| 国产在线青青草| 美女100%一区| 欧美午夜精品久久久久久孕妇| 99免费视频观看| 九七电影院97理论片久久tvb| 精品视频999| 色黄视频免费看| 草莓视频一区二区三区| 日韩精品在线免费| 国产av自拍一区| 久久综合成人| 欧美黑人国产人伦爽爽爽| 日韩美女一级片| 久久久久久婷| 国产在线视频91| 欧美 日韩 国产 成人 在线| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美性色黄大片人与善| 日本最黄一级片免费在线| 亚洲精品第一国产综合野| 蜜臀av色欲a片无码精品一区| 极品美鲍一区| 欧美另类变人与禽xxxxx| 日本中文字幕精品| 亚欧日韩另类中文欧美| 综合网日日天干夜夜久久| 国产精品白嫩白嫩大学美女| 99在线精品免费视频九九视 | 精品无码人妻一区| 色综合久久网| 欧美一级电影免费在线观看| 一级日韩一级欧美| 成人毛片在线观看| 亚洲高清在线播放| 91九色在线播放| 日本韩国一区二区| 丰满人妻一区二区三区大胸| 美女毛片一区二区三区四区| 久久精品国产91精品亚洲| 日本在线视频免费观看| 久久99久久99小草精品免视看| 国产一区视频观看| 欧洲不卡av| 欧美午夜宅男影院在线观看| 精品国产午夜福利在线观看| 国产成人影院| 久久久久九九九九| 伊人久久亚洲综合| 91丨九色丨尤物| 日韩不卡一二区| 色猫猫成人app| 亚洲精品国偷自产在线99热| 国产免费一区二区三区四区| 久久xxxx| 国产精品一区在线观看| 麻豆av在线导航| 日本韩国一区二区三区视频| 国产精品成人99一区无码| 三区四区不卡| 国产精品黄页免费高清在线观看| 丰满熟女一区二区三区| 136国产福利精品导航| 老司机午夜av| 深爱激情综合| 91av在线免费观看| 丰满人妻一区二区| 亚洲欧美一区二区三区极速播放 | 麻豆一区产品精品蜜桃的特点| 青娱乐精品在线视频| 久久久久久久久一区| heyzo中文字幕在线| 欧美一区二区三区白人| 天天操夜夜操av| 美女视频黄频大全不卡视频在线播放| 欧美久久久久久久| 亚洲精品**中文毛片| 日韩精品免费看| 国产成人无码精品久在线观看| 粉嫩在线一区二区三区视频| 欧洲精品在线播放| 北条麻妃一区二区三区在线| 欧美精品精品精品精品免费| 亚洲精品久久久久久无码色欲四季 | 黑人操日本美女| 精品一区二区三区久久久| 中文字幕欧美日韩一区二区| 久久国产精品美女| 欧美日韩国产999| 免费观看黄一级视频| 午夜伦欧美伦电影理论片| 国产精品无码电影| 久久久精品日韩| 亚洲女人毛片| 日本高清精品| 91国产美女在线观看| 视频国产在线观看| 欧美性一二三区| 多男操一女视频| 国产成人午夜片在线观看高清观看| 中文字幕久久综合| 亚洲精品一二三**| 久久久久久com| 99国产精品欲| 亚洲图片自拍偷拍| 999精品免费视频| 国产精品丝袜xxxxxxx| 国产精品播放| 鲁鲁在线中文| 亚洲欧美精品一区| 天天天天天天天干| 自拍偷拍国产亚洲| 国产高潮视频在线观看| 亚洲欧美春色| 色一情一乱一伦一区二区三区丨| 成人国产网站| zzjj国产精品一区二区| www.激情五月| 第一福利永久视频精品| 男人舔女人下部高潮全视频| 日本女人一区二区三区| 国产传媒久久久| 欧美日韩一区二区三区在线电影 | 亚洲精品午夜久久久久久久| 26uuu国产电影一区二区| 国产一伦一伦一伦| 欧美日韩中文| 蜜桃av噜噜一区二区三| 福利一区二区三区视频在线观看| 草民午夜欧美限制a级福利片| 色就是色亚洲色图| 欧美日韩你懂得| 精品视频久久久久| 久久久一区二区三区| 亚洲黄色a v| 99精品欧美| 亚洲午夜精品久久久久久浪潮| 亚洲大奶少妇| 国产成人亚洲综合91| 黄页网站在线观看免费| 亚洲欧美日韩中文在线制服| 国产日产亚洲系列最新| 狠狠色狠色综合曰曰| 国精产品久拍自产在线网站| 久久综合视频网| 污污视频网站在线| 久久久久久黄| 嫩草影院中文字幕| **女人18毛片一区二区| 欧美aaaaa喷水| 久久伊人影院| 国产精品色视频| 老司机2019福利精品视频导航| 欧美大片在线影院| 成年人在线视频| 亚洲国产日韩一区| 黑人精品一区二区三区| 欧美日本国产一区| 色av性av丰满av| 亚洲图片欧美一区| 快灬快灬一下爽蜜桃在线观看| 91丨九色丨黑人外教| 久久久久久久久久毛片| 天堂成人国产精品一区| 福利视频一区二区三区四区| 欧美激情第10页| 亚洲一区二区三区涩| 一区二区美女| 精品无码久久久久国产| 欧美精品国产白浆久久久久| 亚洲精品免费网站| 玖玖精品在线| 国产精品极品美女在线观看免费| 欧美xo影院| 欧美夜福利tv在线| 国产网红女主播精品视频| 久久久精品在线观看| 男男激情在线| 日韩国产精品一区| 亚洲欧洲精品视频| 精品国产区一区| 国产手机av在线| 日韩一区二区三| www.av导航| 日韩写真欧美这视频| 国产乱淫a∨片免费视频| 欧美无砖专区一中文字| 中文字幕久久久久| 欧美伊人久久久久久午夜久久久久| 国产免费观看av| 黄网动漫久久久| 国产情侣在线视频| 精品久久久久久国产| 中文字幕一区二区三区手机版 | 成人激情在线观看| 成人国产激情| 91久久伊人青青碰碰婷婷| www.久久99| 国产一区视频在线| 91麻豆精品国产91久久久更新资源速度超快| 国产精品久久久久久久午夜| 中文.日本.精品| 国产色视频一区| www.欧美视频| 91免费在线视频| 亚洲高清在线一区| 久久久7777| 欧美日韩黑人| 性欧美18一19内谢| 中文字幕一区二区三区在线视频| 国产乱淫av片杨贵妃| 国产一区二区高清| 欧美日韩怡红院| 久久99精品国产91久久来源| 丰满熟女人妻一区二区三区| 92国产精品观看| 免费在线观看a视频| 中文字幕av一区二区三区| 青青操视频在线播放| 亚洲成人777| 樱花视频在线免费观看| 日韩亚洲欧美高清| 日韩亚洲视频在线观看| 中文字幕日韩精品有码视频| 国产黄色小视频在线| 欧美性在线视频| 亚洲18在线| 国内一区二区在线视频观看 | 91麻豆精品国产自产在线观看一区| 丰满少妇被猛烈进入| 一区二区三区黄色| 视频在线这里都是精品| 97色伦亚洲国产| 国产精品麻豆| 欧美激情视频一区二区三区| 999国产精品永久免费视频app| 中国丰满人妻videoshd| 精品一区二区三区日韩| 亚洲av网址在线| 国产精品传媒入口麻豆| av网站中文字幕| 91麻豆精品国产91久久久久久| 天堂中文字幕在线| 欧美日韩第一页| 男女啪啪999亚洲精品| 国产一区二区三区四区hd| 久久伦理在线| av视屏在线播放| 成人免费毛片高清视频| 呻吟揉丰满对白91乃国产区| 午夜亚洲国产au精品一区二区 | 欧美丝袜丝交足nylons| 黄色一级a毛片| 亚洲一区二区久久| 自由的xxxx在线视频| 国产精品十八以下禁看| 久久av免费| 国产精品久久中文字幕| 久久国产精品99久久久久久老狼| 波多野吉衣中文字幕| 亚洲图片欧美一区| 国产a级免费视频| 久久精品国产v日韩v亚洲| 欧美日韩在线精品一区二区三区激情综合 | 成人做爽爽免费视频| 亚洲午夜久久| 噜噜噜久久亚洲精品国产品麻豆 | 国产精品大陆在线观看| 欧美大片网址| 精品一区二区三区无码视频| 国产精品77777| 91久久久久久久久久久久久久| 欧洲一区二区av| 日本高清视频在线| 欧美黑人视频一区| 久久影院一区二区三区| 亚洲国产精品毛片| 久草在线在线精品观看| 国产18无套直看片| 欧美伊人久久久久久午夜久久久久| 国产精品久久久久久久龚玥菲| 26uuu日韩精品一区二区| 国内视频在线精品| 波多野结衣家庭教师在线播放| 丰满岳乱妇一区二区三区| 欧美成欧美va| 精品国产三级a在线观看| 午夜激情在线| 国产精品日韩一区二区三区| 亚洲久色影视| 中文在线永久免费观看| 精品露脸国产偷人在视频| 亚洲大尺度网站| 97超碰国产精品女人人人爽| 女同另类激情重口| 丝袜老师办公室里做好紧好爽 | 麻豆成人在线| 人妻体内射精一区二区| 欧美日韩国产免费| 国产调教视频在线观看| 3d蒂法精品啪啪一区二区免费| 在线国产精品一区| 国产又黄又粗又猛又爽的视频 | 日韩精品一卡二卡| 亚洲片在线资源| 成人黄色免费观看| 亚洲色图都市激情| 不卡电影免费在线播放一区| 国产超碰人人爽人人做人人爱| 亚洲免费影视第一页| 成人豆花视频| 日韩一级性生活片| 91亚洲国产成人精品一区二区三 | 国产精品老女人精品视频| 91精品国产91久久综合| 国产大尺度视频| 日韩欧美亚洲成人| 国产素人视频在线观看| 国产精品美女xx| 久久成人精品| 日韩在线观看视频一区二区| 亚洲成人aaa| 蜜桃精品在线| r级无码视频在线观看| 国产亚洲精品福利| 精品国自产拍在线观看| 日本久久亚洲电影|