springcloud2022正式发布!我的天,openfeign​要退出历史舞台了?!

Java技术栈 Java技术栈     2022-12-23     330

关键词:

点击关注公众号,Java干货及时送达

推荐阅读:

Spring 旗下最牛逼的国产项目!

Nacos 2.2 正式发布,这次更新太炸了!


大家好,我是栈长。

今天给大家通报一则框架更新消息,时隔 2021.x 版本发布一年,Spring Cloud 2022.0.0 最新版发布了,来看下最新的 Spring Cloud 版本情况:

Spring Cloud 无疑是现在 Java 微服务事实上的标准,完全基于 Spring Boot 构建,依赖 Spring 生态体系,可以很好的与各种 Spring 生态项目无缝对接。

Maven 依赖先给大家奉上:

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>2022.0.0</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

Spring Cloud 依赖管理采用的是 import 导入方式,里面管理了许多依赖,统一引入管理,使用时只需要引入对应依赖的坐标即可,不需要指定版本号。

Spring Cloud 目前维护着 4 条版本主线:

  • Spring Cloud 2022.x

  • Spring Cloud 2021.x

  • Spring Cloud 2020.x

  • Spring Cloud Hoxton.x(实际上已经停止维护了)

关于这些版本线的命名是不是很奇怪?

另外,还有几天都要 2023 年了,怎么现在才发布 2022 版本?

其实 Spring Cloud 最新的版本命名方式早已经变更了,以后就是 YEAR.x 这种命名方式了,不清楚的可以看下栈长之前写的两篇文章:

所以说,Spring Cloud 2022.0.0 中的 2022 是指 Spring Cloud 2022.x 版本线,2022.0.0 则是指 2022 这个版本线的第 1 个版本,而不是指某个年份发布的版本。

新特性解读

Spring Cloud 2022.0.0 是一个大版本,更新了太多内容,栈长不打算全部解读,说几个有意思的更新吧。

完整特性更新参考官方发布文档:

  • https://spring.io/blog/2022/12/16/spring-cloud-2022-0-0-codename-kilburn-has-been-released

  • https://github.com/spring-cloud/spring-cloud-release/wiki/Spring-Cloud-2022.0-Release-Notes

1、系统环境

Spring Cloud 2022.0.0 基于以下环境进行构建:

  • Java 17+(兼容 Jakarta EE )

  • Spring Framework 6.x

  • Spring Boot 3.x

所以,这也是 Spring Cloud 2022.0.0 的最低依赖要求,升级请小心。

2、模块升级

模块Version
Spring Cloud Vault4.0.0
Spring Cloud Kubernetes3.0.0
Spring Cloud Function4.0.0
Spring Cloud Zookeeper4.0.0
Spring Cloud Circuitbreaker3.0.0
Spring Cloud Task3.0.0
Spring Cloud Bus4.0.0
Spring Cloud Stream4.0.0
Spring Cloud Openfeign4.0.0
Spring Cloud Commons4.0.0
Spring Cloud Contract4.0.0
Spring Cloud Starter Build2022.0.0
Spring Cloud Netflix4.0.0
Spring Cloud Consul4.0.0
Spring Cloud Config4.0.0
Spring Cloud Build4.0.0
Spring Cloud Gateway4.0.0

3、Eureka 已经更新到 Eureka 2.0.0

大家都知道 Eureka 2.x 早已经停止维护了,如该分支最新公告所示:

https://github.com/Netflix/eureka/tree/2.x-archive

虽然 Eureka 2.0.0 是 Eureka 的一个新分支,但这个分支与 7 年前的 2.x-archive 旧实验分支无关。

创建 Eureka 2.x 新分支的目的是为了与 JakartaEE 兼容而已,让 Spring Cloud Netflix 可以兼容 Spring Framework 6.0 和 Spring Boot 3.0,仅此而已。

4、Spring Cloud OpenFeign 功能完成公告

由于 Spring 现在提供了自己的 HTTP 接口客户端解决方案,比如在最新的 Spring Boot 3.0 中实现接口调用可以有以下两种解决方案:

  • RestTemplate

  • WebClient

所以,从 Spring Cloud 2022.0.0 版本开始,Spring Cloud OpenFeign 模块已经视为功能完成状态了,这意味着 Spring Cloud 团队将不再向该模块添加新功能。

虽然 OpenFeign 不会再添加新功能,但还是会继续修复错误和安全问题,并且也还会考虑和审查来自社区的小规模的 pull requests 请求。

这是不是意味着,在不久的将来,OpenFeign 要退出历史舞台了?

另外,如果你近期准备面试跳槽,建议在Java面试库小程序在线刷题,涵盖 2000+ 道 Java 面试题,几乎覆盖了所有主流技术面试题。

Spring Cloud 支持版本

Spring Cloud 支持的版本情况,以及对应的 Spring Boot 版本如下表所示。

版本线生命周期Spring Boot 版本
2022.x正常Spring Boot 3.0
2021.x正常Spring Boot 2.6.x, 2.7.x(2021.0.3+)
2020.x已停止维护Spring Boot 2.4.x, 2.5.x (2020.0.3+)
Hoxton已停止维护Spring Boot 2.2.x, 2.3.x (SR5+)
Greenwich已停止维护Spring Boot 2.1.x
Finchley已停止维护Spring Boot 2.0.x
Edgware已停止维护Spring Boot 1.5.x
Dalston已停止维护Spring Boot 1.5.x

需要注意的是:

正常维护中的版本中有 Spring Cloud 2021+ 了,其他的版本已经彻底结束生命周期了,官方不再提供维护支持了,非必要,尽量不要再使用了。

另外,如果你想系统学习 Spring Cloud 微服务,包括了最新的 JWT/ OAuth 2 内容,可以考虑报名栈长出品的最新的《Spring Cloud Alibaba 微服务课程》,这是最新、最正确的学习姿势,一次订阅,永久免费更新。

目前最新的 Spring Cloud Alibaba 2021.0.4.0 还是基于 Spring Cloud 2021.0.4.0,尚未同步更新最新的 Spring Cloud 2022.0.0 版本,这个在栈长的微服务课程中也有说明了,两者的版本不一定完全同步,也可能会跳过。

总结

Spring Cloud 2022.0.0 是一个革命性的大版本,依赖的系统环境和模块都有大幅度的更新,特别是 JDK 17、Spring 基础框架的最低要求,对于想升级的小伙伴来说无疑是一件难事,国内的应用也都还是以 JDK 8 为主,要迁移到 Spring Cloud 2022 版本恐怕还需要不少的时日。

最后,学 Spring Cloud 必须先掌握 Spring Boot,如果你还没用过 Spring Boot,今天我就送你一份 《Spring Boot 学习笔记》这个很全了,包括底层实现原理及代码实战,非常齐全,助你快速打通 Spring Boot 的各个环节。

Spring Boot 理论和实战源码仓库:

https://github.com/javastacks/spring-boot-best-practice

你们用的哪个 Spring Cloud 版本呢?欢迎留言分享~

好了,今天的分享就到这里了,后面栈长我会更新更多好玩的 Java 技术文章和最新的技术资讯,关注公众号Java技术栈第一时间推送,不要走开哦。

最后,如果你想系统学习 Spring Cloud 微服务,可以考虑报名栈长出品的最新的《Spring Cloud Alibaba 微服务课程》,这是最新、最正确的学习姿势,一次订阅,永久免费更新。

版权声明: 本文系公众号 "Java技术栈" 原创,原创实属不易,转载、引用本文内容请注明出处,抄袭者一律举报+投诉,并保留追究其法律责任的权利。

End

Spring 旗下最牛逼的国产项目!

23 种设计模式实战(很全)

Spring Boot 3.0 正式发布,王炸!!

Spring Cloud Alibaba 最新重磅发布!

Nacos 2.2 正式发布,这次更新太炸了!

Spring Cloud 微服务最新课程!

springcloud2020.0.4正式版发布,matecloud同步升级

...级依赖。同时兼容SpringBoot2.4.x和2.5.x版本。二、更新说明SpringCloudCommons允许通过group创建反应式断路器SpringCloudConfig当使用JDBC作为存储时,可以返回Boolean、Integer数据当使用Git作为存储时,可以动态的提供用户名、密码Sp 查看详情

springcloud2020.0.4正式版发布,matecloud同步升级

...级依赖。同时兼容SpringBoot2.4.x和2.5.x版本。二、更新说明SpringCloudCommons允许通过group创建反应式断路器SpringCloudConfig当使用JDBC作为存储时,可以返回Boolean、Integer数据当使用Git作为存储时,可以动态的提供用户名、密码Sp 查看详情

springcloud2020.0.4正式版发布,matecloud同步升级

...级依赖。同时兼容SpringBoot2.4.x和2.5.x版本。二、更新说明SpringCloudCommons允许通过group创建反应式断路器SpringCloudConfig当使用JDBC作为存储时,可以返回Boolean、Integer数据当使用Git作为存储时,可以动态的提供用户名、密码Sp 查看详情

springcloud2022发布,这几个组件要移除了!

...f1a;hollischuang)继SpringBoot3.0和SpringFramework6.0之后,SpringCloud终于也推出了新版本——2022.0.0,官网把这个版本命名为Kilburn 查看详情

springcloud2020.0.3正式版发布,微服务开源项目matecloud同步升级

一、关于SpringCloudSpringCloud为开发者提供了快速构建分布式系统中一些常用模式的工具(例如配置管理、服务发现、断路器、智能路由、微代理、控制总线)。分布式系统的协调导致了样板模式,使用SpringCloud开发人员... 查看详情

ecmascript2022正式发布(代码片段)

ECMAScript2022 现已获得 ECMAInternational的批准通过。ECMAScript是标准化的JavaScript语言,于1997年发布了第一版,现已发展成为世界上使用最广泛的通用编程语言之一。本Ecma标准定义了ECMAScript2022Language,是ECMAScript语言规范... 查看详情

springcloud2021.0.0正式发布,第一个支持springboot2.6的版本!

参考技术A美国时间12月2日,SpringCloud正式发布了第一个支持SpringBoot2.6的版本,版本号为:2021.0.0,codename为Jubilee。在了解具体更新内容之前,先提个最重要的点:2021.0.0版本对应的SpringBoot是从2.6.1开始的,所以如果在升级的时候... 查看详情

googlei/o2022来了!大会直播全攻略,即刻收藏

...宴已到来 Google I/O2022 将于北京时间 5月12日凌晨01:00 正式开幕请调好闹钟,和全球开发者一起赴会吧!大会将配备同声传译多平台直播以及回放带你全面了解今年的技术和工具更新想知道怎么观看大会?以下攻略... 查看详情

微软visualstudio2022正式版发布:支持ai辅助编程

微软昨日晚间发布了 VisualStudio2022正式版 等诸多内容,Windows平台软件开发者的福音来了。编辑和调试周期中的生产力在VisualStudio2022正式版中,微软专注于增强编辑和调试周期。VisualStudio2022配备了IntelliCode ,它是一... 查看详情

es2022正式发布!有哪些新特性?(代码片段)

...ECMA大会批准了ECMAScript2022语言规范,这意味着它现在正式成为标准。下面就来看看ECMAScript2022有哪些新特性!总览:Top-levelAwaitObject.hasOwn()at()error.cause正则表达式匹配索引类1.Top-levelAwait在ES2017中࿰ 查看详情

es2022正式发布!有哪些新特性?(代码片段)

...ECMA大会批准了ECMAScript2022语言规范,这意味着它现在正式成为标准。下面就来看看ECMAScript2022有哪些新特性!总览:Top-levelAwaitObject.hasOwn()at()error.cause正则表达式匹配索引类1.Top-levelAwait在ES2017中࿰ 查看详情

地表最强ide——visualstudio2022正式发布

地表最强IDE——VisualStudio2022昨天正式发布啦!堪称宇宙第一IDE工具集的VisualStudio,在经过不断更新优化之后,新版本就要与大家见面了。本次新版本发布,有许多令人期待的新功能和特性升级,快来一睹为快&... 查看详情

springcloudsleuth被官方彻底移除!我真是醉醉的了。。。

...击关注公众号,Java干货及时送达推荐阅读:学习SpringCloud微服务的最佳姿势!SpringCloud2022正式发布!大家好,我是栈长。SpringCloud2022.0.0发布有一段时间了,SpringCloudAlibaba前段时间也进行了兼容性适配,... 查看详情

2022全球程序员薪酬报告出炉,看完我表示严重拖后腿了…

...击关注公众号,Java干货及时送达推荐阅读:学习SpringCloud微服务的最佳姿势!SpringCloud2022正式发布!出品 |OSC开源社区(ID:oschina2013)Levels.fyi网站于日前发布了一份2022年度程序员收入报告,基于收集的... 查看详情

终于!springcloud2021正式发布,一大波更新,看完我彻底躺平了。。(代码片段)

点击关注公众号,Java干货及时送达SpringCloud2021.0.0号外,号外,SpringCloud2021.0.0发布了!距离上一版的《SpringCloud2020.0.4》也有一些日子了,栈长掐指一算,差不多2个多月吧。现在在Maven仓库中已经可用了ÿ... 查看详情

终于。。springcloud2021正式发布,一大波更新,看完我彻底躺平了。。.md(代码片段)

SpringCloud2021.0.0号外,号外,SpringCloud2021.0.0发布了!距离上一版的《SpringCloud2020.0.4》也有一些日子了,栈长掐指一算,差不多2个多月吧。现在在Maven仓库中已经可用了:Maven依赖给大家奉上:<dependency... 查看详情

微软发布了visualstudio2022rc版,并将在11月8日发布正式版

微软今天发布了VisualStudio2022最接近正式发布的RC版本,同时宣布在11月8日发布正式版,届时将在线上发布虚拟的发布活动,具体参见:https://devblogs.microsoft.com/visualstudio/join-us-november-8th-for-the-launch-of-visual-studio-20 查看详情

距离斯威夫特出生的天/小时/月/分钟

...分钟【英文标题】:Days/Hours/Months/MinutesawayfromBirthinSwift【发布时间】:2015-04-0504:04:49【问题描述】:我在将一些代码从Objective-C转换为Swift时遇到了一些问题。我正在尝试制作一个标签来说明我的年龄。我想给出我的生日,它会... 查看详情