升级背景

springboot2.3.7太老了,官方都已经不支持了。(个人说句实话,其实也还好,只是springboot最近有点抽风,太快了。真不是国jun不给力,而是共jun太强悍了!)

查看当前版本的支持情况: [Spring Boot Level up your Java code and explore what Spring can do for you. ]

2.3.X版本,去年就gg了。

为了啥都好,那是必须要升级的。

既然要升级,就升级到到最新的支持的版本了。

3.0就不要想了,为啥?因为还没有正式版本,那就2.7吧。

升级准备

代码准备

升级之前,先记得拉个新的分支,如果没有svn工具,你就先复制一份,否则到时候中途升级失败,或者加个新的需求,后面就完犊子了。

依赖准备

为了方便大家升级,官方退出了套餐包。

下面的这个是2.7.0的,你可以在路径中直接将2.7.0修改未2.7.2就可以了。

[Dependency Versions]

你可以直接去更新对应的依赖包的版本,再也不用担心冲突了。

二是还增加了以下集成依赖。这个依赖的作用是当你的配置文件中存在被识别的已经移除的属性时,将会日志打印提示。简单来说就是历史的无效配置可以干掉了。

添加下当前maven的操作就可以了。

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-properties-migrator</artifactId><scope>runtime</scope></dependency>

项目正常后,记得删掉这个哦。

当然,如果你是新项目,就不要那么麻烦了,直接上start.spring.io自己随便整下就可以。

注意事项

1、spring-cloud-starter-bootstrap 依赖(可选)

如果你的项目使用的是bootstrap配置文件,那么需要加下spring-cloud-starter-bootstrap依赖,因为新的版本里面,把bootstrap已经摘出去了,单独成一派。

如果不加的话,会读不到配置文件中的值哦。

spring-cloud-starter-bootstrap 依赖

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bootstrap</artifactId><version>3.1.3</version></dependency>

2、跨域设置

addAllowedOrigin("*")在2.7的版本中不支持了,需要使用addAllowedOriginPattern("*")来代替。

3、拦截器设置

原有的拦截器webmvcconfigureradapter 过期了,需要实现新的接口WebMvcConfigure。

4、配置文件设置

pathmatch默认匹配规则变了。需要设置默认的规则为ant_path_matcher。

spring:mvc:pathmatch:matching-strategy: ant_path_matcher

5、swagger设置

swagger的话建议可以使用springdoc试下,这个用起来还是比较爽的。如果你不换的话,也是可以的。

其它的设置根据你的业务来了,如果包过时了升级一下就可以了。

总结

总体升级来讲的话,还是要参考官方的相关升级文档。个人建议如果没有对应的经验,最好不要一下跨度太大,可以小版本的来处理下。这样的话中间的变动会比较小,出现问题处理起来也会快的多。
欢迎关注我的公众号:敲代码的老贾,回复“领取”赠送《Java面试》资料,阿里,腾讯,字节,美团,饿了么等大厂

springboot2.3.7升级到springboot2.7.2相关推荐

  1. springboot1.5.x升级到springboot2.x 解决方案

    pageRequest的过时 更改为 Pageable pageable = PageRequest.of(pageIndex,pageSize,sort); 注解@NotEmpty @Email过时 ...

  2. SpringBoot2.0之五 优雅整合SpringBoot2.0+MyBatis+druid+PageHelper

    上篇文章我们介绍了SpringBoot和MyBatis的整合,可以说非常简单快捷的就搭建了一个web项目,但是在一个真正的企业级项目中,可能我们还需要更多的更加完善的框架才能开始真正的开发,比如连接池 ...

  3. 记一次Redis出问题及解决方案

    Q1: redis服务关闭前确认数据还是在的,重启后发现一条数据都没了,key* 查也是空的 A1: 经仔细检查发现redis.conf配置文件配置的数据存储目录配置的是dir ./ 也就是相对目录, ...

  4. 搞定全局ID生成器:SpringBoot2.x 集成百度 uidgenerator

    点击上方 好好学java ,选择 星标 公众号重磅资讯,干货,第一时间送达 今日推荐:推荐19个github超牛逼项目!个人原创100W +访问量博客:点击前往,查看更多 作者:风.foxwho fo ...

  5. SpringBoot2.x 配合 Redis 操作

    我们都知道,把首页数据放到Redis里,能够加快首页数据的访问速度.但是我们要如何准确又快速的将 Redis 整合到自己的 SpringBoot2.x 项目中呢?今天阿淼就带大家爬一爬其中的门门道道. ...

  6. Springboot2.1.1版本升级到2.3.10版本报错合集及解决办法

    背景: 我的项目是springboot+springcloud的,因为安全原因,需要升级版本,所以升级到2.3.10,接下来就是各种报错处理. 一.springboot和springcloud版本对应 ...

  7. 零基础快速入门SpringBoot2.0教程 (二)

    一.SpringBoot2.x使用Dev-tool热部署简介:介绍什么是热部署,使用springboot结合dev-tool工具,快速加载启动应用官方地址:https://docs.spring.io ...

  8. 青锋开源架构-springboot2.6.x+vue3-antdesign-vite之springsecurity实现访问权限控制

    框架开源地址: 青锋开源架构-springboot2.6.x+vue3-antdesign-vite: 青锋-springboot2.6.x+vue3-antdesign-vite开源架构,实现了系统 ...

  9. SpringBoot升级到2.0后默认时间格式变化_springboot接收date类型参数

    springboot1.x时,请求返回默认将Date类型转换成时间戳: createTime: 1544693261000 然而在升级到springboot2.0后,默认返回的时间格式变成了UTC字符 ...

最新文章

  1. 数组最大可以开多大_每日算法系列【LeetCode 689】三个无重叠子数组的最大和
  2. Python递归调用
  3. zookeeper的名词复盘-集群角色
  4. mfc cimage加载显示图片_在微信小程序里实现图片预加载组件
  5. Storm入门教程 Storm安装部署步骤
  6. html中的空格表示
  7. Qt3D学习之键盘交互
  8. qrcode生成带logo的二维码(插件,示例代码)
  9. 常用的SEO工具都有哪些呢?5个SEO必备优化工具推荐
  10. jquery的toastr消息提示插件
  11. 华为的服务器虚拟化软件,华为FusionSphere虚拟化软件各版本之间的功能和区别
  12. 推荐十款现今最受欢迎的数据可视化工具,供你参考
  13. 百度+京东+美团Java面经合集
  14. widows 句柄HINSTANCE
  15. P2918 [USACO08NOV]Buying Hay S(买干草)(ssl 2895)
  16. 二分、数组-LeetCode378. 有序矩阵中第K小的元素
  17. linux桌面版本安装MSDM,_如何安装linux操作系统?
  18. RuntimeError: cublas runtime error : the GPU program failed to execute at /tmp/pip-req-build-jh50bw2
  19. O365 Multi-Geo测试报告
  20. 苹果怎么查看UDID iPhone/iPad查看UDID教程【详解】

热门文章

  1. 设置windows7用户自动登录
  2. 手机版的python3编译器,python编辑器安卓下载
  3. android 自定义 snackbar,Android Snackbar 使用
  4. 基于matlab的脑瘤mr图像处理_MRI图像的脑肿瘤分割方法研究
  5. 2021年高压电工复审考试及高压电工模拟考试题
  6. 第十六届全国大学生智能汽车竞赛华北赛区开幕式在我院隆重举行
  7. offer写的薪资3.5万,入职时公司却让签5000元薪资的合同,不签就无法入职!
  8. 创业做跨境电商有前途吗?
  9. 【AI实战】大语言模型(LLM)有多强?还需要做传统NLP任务吗(分词、词性标注、NER、情感分类、知识图谱、多伦对话管理等)
  10. @media 判断iphone/ipad 各种机型