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

做简历网站 39仪征做网站公司哪家好

做简历网站 39,仪征做网站公司哪家好,如何用wordpress建立论坛,网站定制开发建设一个面向 Java 开发者的 Sring-Ai 示例工程项目,该项目是一个 Spring AI 快速入门的样例工程项目,旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计,每个模块都专注于特定的功能领域,便于学习和…

一个面向 Java 开发者的 Sring-Ai 示例工程项目,该项目是一个 Spring AI 快速入门的样例工程项目,旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计,每个模块都专注于特定的功能领域,便于学习和扩展。欢迎感兴趣的小伙伴们关注和 Star。
项目地址:https://github.com/java-ai-tech/spring-ai-summary

本篇主要是介绍针对一个新起的 SpringBoot 3.x 项目,如何快速集成 SpringDoc OpenAPI 来实现 API 管理。

springdoc-openapi 与 Spring Boot 的版本兼容性

在开始接入之前,一定要先关注这个版本兼容性匹配,根据你当前项目所使用的 springboot 版本来选择 springdoc openapi 的版本。springdoc-openapi 2.xspring-boot 3 兼容,具体版本对应表如下:

Spring Boot VersionsSpringdoc OpenAPI Versions
3.4.x2.7.x - 2.8.x
3.3.x2.6.x
3.2.x2.3.x - 2.5.x
3.1.x2.2.x
3.0.x2.0.x - 2.1.x
2.7.x, 1.5.x1.6.0+
2.6.x, 1.5.x1.6.0+
2.5.x, 1.5.x1.5.9+
2.4.x, 1.5.x1.5.0+
2.3.x, 1.5.x1.4.0+
2.2.x, 1.5.x1.2.1+
2.0.x, 1.5.x1.0.0+

如果你集成过程中可能会出现类似以下的报错信息,则原因就是版本不匹配导致

Caused by: java.lang.NoClassDefFoundError: org/springframework/web/servlet/resource/LiteWebJarsResourceResolverat java.base/java.lang.ClassLoader.defineClass1(Native Method)at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1027)at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)at java.base/java.lang.Class.getDeclaredMethods0(Native Method)at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3578)at java.base/java.lang.Class.getDeclaredMethods(Class.java:2676)at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:465)... 56 more
Caused by: java.lang.ClassNotFoundException: org.springframework.web.servlet.resource.LiteWebJarsResourceResolverat java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)... 69 more

快速开始

要在 Spring Boot 与 Swagger UI 之间进行集成,只需将该库添加到项目依赖中(无需额外配置)。

 <dependency><groupId>org.springdoc</groupId><artifactId>springdoc-openapi-starter-webmvc-ui</artifactId><version>2.8.9</version></dependency>

如果不需要 Swagger UI 界面,则可以只引入

<dependency><groupId>org.springdoc</groupId><artifactId>springdoc-openapi-starter-webmvc-api</artifactId><version>2.8.9</version></dependency>

Springdoc-openapi 模块的层级关系大致如下,通过这张图可以比较清晰的了解到 Springdoc-openapi 的结构。

Architecture

实际上,在引入依赖之后,其他什么操作都不用,直接启动项目即可。然后通过下面两个链接来分别获取 Swagger UI 和 api-docs

# 展示 Swagger UI
http://localhost:8080/swagger-ui/index.html
# 获取 api docs
http://localhost:8080/v3/api-docs

这两个地址都是 springdoc openapi 默认的,如图你想自定义路径,可以通过下面两个配置修改:

# swagger-ui 自定义 path
springdoc.swagger-ui.path=/swagger-ui.html
# /api-docs endpoint 自定义 path
springdoc.api-docs.path=/api-docs

对 Actuator 的支持

Springdoc-openapi 实现了对 springboot Actuator 的支持。首先你需要在项目中引入 actuator 的依赖

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

然后需要在配置文件中将 actuator 的展示配置开启

springdoc.show-actuator=true
# 使用单独的 management port
springdoc.use-management-port=true
management.server.port=9090
# 将 openapi 和 swagger-ui 暴露出来
management.endpoints.web.exposure.include=openapi, swagger-ui

这里需要注意下,如果你配置了 springdoc.use-management-port=true ,但是没有配置 management.server.port,则启动时会报如下的错误:

Description:Parameter 3 of method indexPageTransformer in org.springdoc.webmvc.ui.SwaggerConfig required a bean of type 'org.springdoc.webmvc.ui.SwaggerWelcomeCommon' that could not be found.Action:Consider defining a bean of type 'org.springdoc.webmvc.ui.SwaggerWelcomeCommon' in your configuration.

配置完成后,可以通过下面两个路径访问

# 实际出现 404
http://localhost:9090/actuator/openapi
# 正常
http://localhost:9090/actuator/swagger-ui

所以结论就是,还是别集成 Actuator 了

总结

本篇完整的介绍了 SpringBoot 3 集成 SpringDoc OpenAPI 的过程,从版本兼容性、可能出现的报错信息以及是否需要集成 Actuator 等方面出来了具体的集成方式和建议;希望对你有所帮助。

http://www.dtcms.com/a/404937.html

相关文章:

  • 建盏周世义个人简介优化品牌seo关键词
  • 网站标题如何修改花乡科技园区网站建设
  • 陕西网站开发联系方式wordpress禁止谷歌字体
  • 网站开发中制作视频播放器游学做的好的网站
  • xx汽车企业网站和信息化建设网站是什么
  • ip库网站源码佛山seo
  • 衡水公司做网站网络营销讲师培训
  • 网站不让百度收录南京物流最新情况
  • 免费网站如何做推广方案手机网站的特效
  • 国外做电子元器件在哪个网站小程序商店推荐
  • 江西网站制作公司培训机构做网站宣传
  • 虚拟主机怎么建网站中国建筑工程网招标公告
  • 江津哪里找做网站的开封市住房和城乡建设网站
  • 网站开发流程 文档网页广告拦截
  • 网站速度优化方案网站制作自学百度云
  • 雄安做网站要多少钱做经营性的网站备案条件
  • 张家口网站网站建设seo企业优化方案
  • 做关于什么样的网站好wordpress财务会计系统
  • 网站主服务器地址网站建设报价请示
  • asp.net 新建网站wordpress 编辑器设置
  • 恒锐奇 做网站网站建设对公司的发展
  • 公司展示网站模板软件开发学校
  • 如何去掉Wordpress访问网站程序开发工程师需要哪些能力
  • 吉林建设集团网站秦皇岛北戴河
  • 简述电子政务网站设计的技术青岛圭谷网站建设公司
  • 南庄营销网站建设wordpress 文章 插件
  • 网优 是什么网站怎么编辑网站后台
  • 做外贸网站 怎么收钱导航去浙江省肿瘤医院
  • 建设一个网站哪家好深圳推广网站
  • 商务网站建设怎样收费小程序怎么开发自己的小程序游戏