maven java,Spring boot集成Swagger3

 2023-10-15 阅读 25 评论 0

摘要:一、導入依賴 這里以springfox來使用:SpringFox是 spring 社區維護的一個項目(非官方),幫助使用者將 swagger2 集成到 Spring 中。常常用于 Spring 中幫助開發者生成文檔,并可以輕松的在spring boot中使用。 swagger3只需要導入一個依賴&#

一、導入依賴

這里以springfox來使用:SpringFox是 spring 社區維護的一個項目(非官方),幫助使用者將 swagger2 集成到 Spring 中。常常用于 Spring 中幫助開發者生成文檔,并可以輕松的在spring boot中使用。

swagger3只需要導入一個依賴:

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

二、基本使用

1.開始使用

在spring boot主類上標注@EnableOpenApi,瀏覽器訪問http://localhost:8080/swagger-ui/即可訪問到初始頁面:

maven java、image-20210412102921997

2.配置類的編寫

@Configuration
public class SwaggerConfig {@Beanpublic Docket desertsApi(){return new Docket(DocumentationType.OAS_30).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.basePackage("com.deserts.swagger.controller")).paths(PathSelectors.any()).build().groupName("desertsGroup").enable(true);}private ApiInfo apiInfo(){return new ApiInfoBuilder().title("Swagger3測試文檔").description("文檔描述信息").contact(new Contact("deserts", "#", "2569509245@qq.com")).version("1.0").build();}
}

對應配置的結果:

image-20210412161313154

3.常用注解

swagger3的注解與swagger2相差很多,也兼容了swagger2的注解,區別如下:

springboot jwt?image-20210412161455264

標注在實體類上:

@Data
@ApiModel(value = "用戶類",description = "用戶")
public class User {@Schema(description = "用戶名")private String username;@Schema(description = "密碼")private String password;
}

標注在控制器上:

@RestController
@Api(tags = "用戶信息處理")
public class HelloController {@GetMapping("/user")@Operation(summary = "獲取用戶信息")@ApiImplicitParams({@ApiImplicitParam(name = "username", value = "用戶名"),@ApiImplicitParam(name = "password", value = "密碼")})public User getUser(@RequestParam("username")String username, @RequestParam("password")String password){User user = new User();user.setUsername(username);user.setPassword(password);return user;}
}

這里的@Paramters和@Parameter注解竟然不生效,具體原因找了挺久也沒有結果,有知道的朋友歡迎補充!

基于springboot,標注后的結果:

image-20210412170507981

三、使用knife4j優化體驗

1.導入依賴

        <dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>3.0.2</version></dependency>

2.訪問

直接訪問http://localhost:8080/doc.html

image-20210412170614150

springboot啟動類。導出文檔:

image-20210412170638365

這樣真的舒服了:

image-20210412170712096

四、參考博客

springboot官網。Swagger3 注解使用(Open API 3)

Swagger3配置

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/2/137194.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息