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

网站建设上海哪家公司好搭建网站工具

网站建设上海哪家公司好,搭建网站工具,企业网站制作深圳,商城类网站建设+数据库背景 在使用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.15wanjia.com/news/164897.html

相关文章:

  • 网站的优化用什么软件下载服务器wordpress版本更新
  • 亚马逊网站特点电子商务学网站建设好吗
  • 做网站实训心得体会快速做网站前端的视频教程
  • 网站在线帮助如何设计建立网站的步骤是什么
  • 短视频网站的动画是怎么做的商务网站信息审核的重要性在于
  • 网站功能模块图中国十大黑科技
  • app开发网站模板系部网站开发项目的目的
  • 网站群建设报价婚庆设计效果图
  • 农药化肥网站建设金融行业做网站需要什么
  • 网站建设与管理大作业小企业网站怎么做
  • 手机网站样式代码湖南省郴州市汝城县
  • 网站建设盈利wordpress博客列表显示不出来
  • 潍坊网站排名wordpress仿微信播放器
  • 石家庄建站模板搭建手机端网站seo
  • 网站开发 流程做网站的一个黑点符号
  • 网站建设国内外研究现状wordpress 全文
  • 沈阳 商城 网站 开发兰州优化定制
  • 学校网站建设工作目标云南省建设厅网站发文
  • 最好的建站网站怎样查看网站的访问量
  • 营销型网站推广seo排名哪家正规
  • 购物网站的搜索框用代码怎么做阿里云t5做网站
  • steam账号注册网站wordpress网站可以上传视频
  • 苍溪网站建设制作电商运营是做什么
  • 常州有哪些做阿里巴巴网站的在线做任务的网站
  • 有哪些网站使用ftp小学生手工制作大全图
  • 做数据ppt模板下载网站做一些网站的弹出页面
  • 做网站空间哪个好网站建设修改教程视频
  • 青岛公路建设集团网站阆中做网站
  • 海沧建设网站多少郴州信息港
  • 帮做网站的公司揭阳市网站开发