当前位置: 首页 > news >正文

佛山网络优化推广公司天津seo培训机构

佛山网络优化推广公司,天津seo培训机构,做业务需要知道哪些网站,网站怎么建设教程背景 在使用SpringBoot 2.6以前去创建API文档工具一般会采用SpringFox提供的Swagger库,但是由于SpringBoot版本的不断升级和SpringFox摆烂不更新,导致了SpringBoot2.6之后的项目无法使用SpringFox去生成API文档,或者可以使用但是有很多的bug…

背景

在使用SpringBoot 2.6以前去创建API文档工具一般会采用SpringFox提供的Swagger库,但是由于SpringBoot版本的不断升级和SpringFox摆烂不更新,导致了SpringBoot2.6之后的项目无法使用SpringFox去生成API文档,或者可以使用但是有很多的bug。

SpringDoc是一款可以结合SpringBoot使用API文档生成工具,基于OpenAPI 3,而且项目维护和社区都在不断更新,不仅支持SpringMVC,而且还支持Spring WebFlux项目。

SpringDoc是SpringBoot 的API文档工具。官网:https://springdoc.org/

快速升级步骤

第一步 替换依赖

<!-- 原依赖包 -->
<dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>${swagger.version}</version>
</dependency><!-- 新的依赖包 -->
<dependency><groupId>org.springdoc</groupId><artifactId>springdoc-openapi-webmvc-core</artifactId><version>${xxx.version}</version>
</dependency>

第二步 替换相关注解

用 swagger 3 注释替换 swagger 2 注释(它已经包含在springdoc-openapi-ui依赖项中)。swagger 3 注释的包是io.swagger.v3.oas.annotations.

  • @Api→@Tag
  • @ApiIgnore→@Parameter(hidden = true)或@Operation(hidden = true)或@Hidden
  • @ApiImplicitParam→@Parameter
  • @ApiImplicitParams→@Parameters
  • @ApiModel→@Schema
  • @ApiModelProperty(hidden = true)→@Schema(accessMode = READ_ONLY)
  • @ApiModelProperty→@Schema
  • @ApiOperation(value = "foo", notes = "bar")→@Operation(summary = "foo", description = "bar")
  • @ApiParam→@Parameter
  • @ApiResponse(code = 404, message = "foo")→@ApiResponse(responseCode = "404", description = "foo")

这里如果代码很多,一个个进行替换会很耗时和麻烦,可以用idea的全文(正则)替换。

例如:

import io.swagger.annotations.Api;
import io.swagger.v3.oas.annotations.tags.Tag;@Api\(value = (.*), tags = (.*)\)
@Tag\(name= $2, description = $1\)

 打开idea全局替换窗口,查找路径:idea->Edit->Find->Replace in Files...

快捷键:Ctrl+Shift+R

 输入如下正则表达式,这里需要根据自己实际写的代码使用表达式,像下面这样,就可以把

@Api(value = "ActivityAppController", tags = "招商活动管理")
->@Tag(name= "招商活动管理", description = "ActivityAppController")

 常用替换表达式:

import io.swagger.annotations.Api;
->
import io.swagger.v3.oas.annotations.tags.Tag;查找方式示例:
@Api\(value = (.*), tags = (.*)\)
@Tag\(name= $2, description = $1\)import io.swagger.annotations.ApiOperation;
->
import io.swagger.v3.oas.annotations.Operation;查找方式示例:
@ApiOperation\(value = (.*), notes = (.*)\)
@Operation\(summary = $1, description = $2\)查找方式示例:
@ApiOperation\((.*)\)
@Operation\(summary = $1\)import io.swagger.annotations.ApiResponses;
->
import io.swagger.v3.oas.annotations.responses.ApiResponses;import io.swagger.annotations.ApiResponse;
->
import io.swagger.v3.oas.annotations.responses.ApiResponse;查找方式示例:
@ApiResponse\(code = HttpStatus.SC_OK, message = (.*)\)
@ApiResponse(responseCode = "200", description = $1)import io.swagger.annotations.ApiParam;
->
import io.swagger.v3.oas.annotations.Parameter;查找方式示例:
#unicode中文范围 \u4e00-\u9eff
@ApiParam\(value = ("[\w|\u4e00-\u9eff]+")
@Parameter\(description = $1import io.swagger.annotations.ApiModelProperty;
->
import io.swagger.v3.oas.annotations.media.Schema;查找方式示例:
@ApiModelProperty\((.*)\)
@Schema\(description = $1\)非正则:
import io.swagger.annotations.*;
->
import io.swagger.v3.oas.annotations.*;
import io.swagger.v3.oas.annotations.responses.*;
import io.swagger.v3.oas.annotations.tags.*;

第三步 导包

上面替换完如果还有一些包没有导入,或者还有一些旧的无用包还在代码里面,则可以使用idea的自动导包,快速处理。选择某个目录,右键->Optimize Imports,或者使用快捷键:Ctrl+Alt+O

 至此升级完成,build项目看是否有报错。

扩展

查看maven依赖技巧:可以使用Maven Helper插件来查看相关依赖,以确保移除了swagger2相关依赖。

 在pom.xml文件那里会看到Dependency Analyzer,在这个界面可以查找相关依赖包

 

http://www.ds6.com.cn/news/81554.html

相关文章:

  • 网站维护服务百度竞价排名推广
  • 可以用css3做响应式网站吗软文推广平台排名
  • 上海商城网站建设网站平台有哪些
  • 有什么网上做c 的网站百度app下载最新版
  • 首先确定网站建设的功能定位整站优化代理
  • 政务网站建设工作计划结尾海外域名
  • 绍兴网站建设公司今日新闻摘抄十条
  • 男女一夜做受视频最新网站seo站长网
  • 网站开发网站制作网站营销方案模板
  • 响应式网站方案站长之家域名查询排行
  • nas搭建网站专业网站推广软件
  • 平度推广网站建设seo网络推广员招聘
  • ASP网站开发技术期末考试凡科建站客服电话
  • 天蝎网站建设seo关键词排名点击工具
  • 找网络公司做网站传媒公司
  • 网站免费域名申请有哪些网络推广平台
  • 山东企业网站备案沧州网站建设公司
  • 成品短视频app的优势抖音seo什么意思
  • 中山电商网站制作站长工具怎么关掉
  • 怎么利用网站做兼职引流推广的句子
  • 常州网站建设软件搜索指数在线查询
  • 海南澄迈网站建设兰州网站seo服务
  • 零基础学习网站开发优化大师最新版下载
  • 网络培训ppt长沙网站seo收费
  • 58网页版登录打开数字营销服务商seo
  • 制作网站的步骤百度seo排名帝搜软件
  • 响应式网页需要什么技术优化资源配置
  • 典型的b2b网站有论坛推广平台有哪些
  • 商场设计案例宁波关键词优化排名工具
  • 做模板网站怎么放视频百度上怎么打广告宣传