从零搭建开发脚手架 顺应潮流开启升级 - SpringBoot 从2.x 升级到3.x

涉及升级项

  • 升级JDK 8 -> JDK17

  • Spring Boot 2.3.7 -> Spring Boot 3.1.3

  • Mysql5.7.x -> Mysql8.x

  • Mybatis-Puls 3.4.2 -> 3.5.3

  • knife4j 2.x -> 4.3.x

  • sa-token 1.24.x -> 1.34.x

  • javamelody 1.87.x -> 2.0.1

  • 因为easy-captcha增加openjdk.nashorn依赖

  • 移除Druid连接池(当前不支持SpringBoot3)

导入包修改

// 由javax.servlet.*
import javax.servlet.ReadListener;
import javax.servlet.ServletInputStream;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
// 改为jakarta.servlet.*
import jakarta.servlet.ReadListener;
import jakarta.servlet.ServletInputStream;
import jakarta.servlet.http.Cookie;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequestWrapper;



// 由
import javax.annotation.PostConstruct;
// 改为
import jakarta.annotation.PostConstruct;

SpringBoot3.x中spring.factories功能被移除

之前的SpringBoot starter插件自动注册原理是依赖spring.factories功能,在Spring Boot 3.0彻底移除。

替代方案为在类路径下创建META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports文件,文件的内容是:每个实现类的全类名单独一行

对于snakerflow组件,可以在项目某个模块的resources目录下建立META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports文件,输入以下内容:

com.github.snakerflow.plugin.SnakeFlowConfiguration
com.github.snakerflow.plugin.TransactionManagerConfig

上面内容来自

猜你喜欢

转载自blog.csdn.net/abu935009066/article/details/133310844