spring boot 2升级3 记录

因为合规要求,需要进行升级

项目旧版本,springboot 2.7版本需要升级到 3.3.2,其中java 8升级到了 java 17

java包变更

javax 改为 jakarta 包

参考博客

swagger升级事项

如果升级了,spring boot,但是swagger 还是3.0.0版本的话,启动就会报错,因为内部反射还是获取的 javax里面的类

Caused by: java.lang.ClassNotFoundException: HttpServletRequest

所以swagger 要同步升级,升级成 openapi版本

复制代码
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-ui</artifactId>
<version>1.5.12</version>
</dependency>

<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-api</artifactId>
<version>1.5.12</version>
</dependency>

其间要进行很多替换,关键注解替换参考:OpenAPI 3 Library for spring-boot

最后用的knife doc

参考pom

复制代码
<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
    <version>4.4.0</version>
</dependency>

redis 修改

redis 配置在spring boot 3.0版本改了位置 ,最开始我怀疑是实例化顺序问题,因为在 eventlistener 中配置了redis读取,读取的local:[默认端口] 超时失败后整个app中止了,jedis 连接池实际上没有实例化,读取的默认配置,很烦,应该报错的,结果直接兼容了错误

2.0版本

复制代码
spring:
  redis:

3.0

复制代码
spring:
  data:
    redis:
相关推荐
我叫张小白。16 小时前
Spring Boot拦截器详解:实现统一的JWT认证
java·spring boot·web·jwt·拦截器·interceptor
uzong17 小时前
Mermaid: AI 时代画图的魔法工具
后端·架构
Gerardisite18 小时前
如何在微信个人号开发中有效管理API接口?
java·开发语言·python·微信·php
q***697718 小时前
Spring Boot与MyBatis
spring boot·后端·mybatis
闲人编程18 小时前
Python的导入系统:模块查找、加载和缓存机制
java·python·缓存·加载器·codecapsule·查找器
故渊ZY19 小时前
Java 代理模式:从原理到实战的全方位解析
java·开发语言·架构
匿者 衍19 小时前
POI读取 excel 嵌入式图片(支持wps 和 office)
java·excel
一个尚在学习的计算机小白19 小时前
java集合
java·开发语言
IUGEI19 小时前
synchronized的工作机制是怎样的?深入解析synchronized底层原理
java·开发语言·后端·c#
q***136119 小时前
Windows操作系统部署Tomcat详细讲解
java·windows·tomcat