Spring Boot 3.1 正式发布,更新了一大批新特性。。学不动了!

点击关注公众号,Java干货及时送达2d13ca51f966314f68bfa55c15a5b453.png

31053fb32d8f6317884263a9ae6b06df.png 学习 Spring Cloud 微服务的正确姿势!

2ec4e9da000e322b3179725477319566.png 用上 ChatGPT 啦,强的离谱!

ea8bbaa97e4fb6b730ea7dd475195f15.png 终于把 Spring Boot 3.0 写成书了!


Spring Boot 3.1 正式发布

大家好,我是R哥。

上一篇:Spring Boot 3.0 正式发布,王炸!!

Spring Boot 3.0 发布半年左右,Spring Boot 3.1 正式发布了:

c1bd0e90e90652f6ebf308713c8ea691.png

同时发布更新的还有 2.7.x 版本,同时,R哥注意到 2.6.x 版本线已经停止维护了,最新支持版本如下图所示:

b6cea8135e64b406448cb86281ad52c8.png

2.7.x 这也是目前唯一正在维护的 2.x 版本线了,商业支持的版本也只有 2.5.x 了。

如果你还没用过 Spring Boot,这里推荐下R哥的《Spring Boot 3 核心技术与最佳实践》最新书籍,包括底层实现原理及代码实战,知识点非常齐全,助你快速打通 Spring Boot 的各个环节。

Spring Boot 3.0 重大新特性

R哥看了下,Spring Boot 3.1 更新了不少内容,今天R哥就简单分享下几个重要的更新。

1、最低环境要求

Spring Boot 3.0 的发布,其最低要求 Java 17,并向上兼容支持 Java 19,Spring Boot 3.1 可以支持 Java 20 了,因为前段时间 Java 20 发布了。

对 Java 开发环境的要求对比表:

Spring BootJDKSpringMavenGradle
3.1.017 ~ 206.0.9+3.6.3+7.5+,8.x
3.0.017 ~ 196.0.2+3.5+7.5+
2.7.128 ~ 205.3.27+3.5+6.8.x, 6.9.x, 7.x, 8.x

2、大量依赖升级

Spring Boot 3.1 最低支持的 Spring 框架也变成了 Spring 6.0.9+,除此之外,Spring Boot 管理的大量第三方的技术依赖也有大幅度的的升级,具体可以参考官方版本发布文档:

https://github.com/spring-projects/spring-boot/releases/tag/v3.1.0

以上这些技术的升级对于 Spring Boot 应用的升级也是一头拦路虎。

3、移除 HttpClient 4

因为 Spring 6 删除了 RestTemplate 对 Apache HttpClient 4 的支持,取而代之的则是 Apache HttpClient 5。

而 Spring Boot 3.0 又同时包含了 HttpClient 4 和 HttpClient 5 两个依赖的管理,如果同时管理这两个版本,有的人可能会继续使用 HttpClient 4,应用程序在使用 RestTemplate 时可能会有潜在的错误,导致诊断困难。

所以,Spring Boot 3.1 移除了 HttpClient 4 的依赖管理,转而逼迫用户强制使用 HttpClient 5,大家有依赖 HttpClient 4 的升级时需要注意了。

4、Servlet 和 Filter 注册失败时抛异常

大家知道,Spring Boot 注册 Servlet 和 Filter 时用的 ServletRegistrationBean 和 FilterRegistrationBean 这两个类,之前注册失败时是记录 warn 级别的日志,现在则是直接抛出 IllegalStateException 异常。

如果不想注册失败抛出异常,还是想像以前一样记录 warn 警告日志,可以调用这两个类的 setIgnoreRegistrationFailure(true) 方法,即忽略注册失败,使用示例如下:

@Bean
public ServletRegistrationBean registerServlet() {ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new RegisterServlet(), "/registerServlet");servletRegistrationBean.addInitParameter("type", "公众号");servletRegistrationBean.addInitParameter("name", "Java技术栈");servletRegistrationBean.setIgnoreRegistrationFailure(true);return servletRegistrationBean;
}

5、Spring Authorization Server 自动配置

Spring Boot 3.1 提供了一个 spring-boot-starter-oauth2-authorization-server 启动器,可以支持 Spring Authorization Server 的自动配置,轻松配置基于 Servlet 的 OAuth2 授权服务器。

更多参考官方文档:

https://docs.spring.io/spring-boot/docs/3.1.0/reference/html/web.html#web.security.oauth2.authorization-server

6、Docker Compose 新模块

Docker Compose 是一个用于定义和运行多个 Docker 容器的工具,即官方容器编排工具,它可以轻松地定义多个容器之间的依赖关系、环境变量、网络设置等,并通过一个命令即可创建、启动和连接这些容器。

Spring Boot 3.1 提供了一个新模块:spring-boot-docker-compose,它支持与 Docker Compose 集成,当 Spring Boot 应用启动时,它会在当前工作目录中查找配置文件。

支持以下几种配置文件:

  • compose.yaml

  • compose.yml

  • docker-compose.yaml

  • docker-compose.yml

更多参考官方文档:

https://docs.spring.io/spring-boot/docs/3.1.0/reference/html/features.html#features.docker-compose

7、SSL 配置

Java KeyStore 和 PEM 编码证书等 SSL 信任相关的资料,现在可以使用 properties 属性进行配置,并且可以适用于各种类型的连接,例如嵌入式 Web 服务器、数据服务、RestTemplate 和 WebClient。

更多参考官方文档:

https://docs.spring.io/spring-boot/docs/3.1.0/reference/html/features.html#features.ssl

8、服务连接

Spring Boot 3.1 引入了一个新的服务连接概念,这是一个低级别的功能,旨在作为其他高级功能的构建块,这些高级功能可以通过定义 ConnectionDetails Bean 自动配置服务连接。

ConnectionDetails Bean 提供了建立、删除服务连接所需的详细信息,并且 Spring Boot 的自动配置也已经支持,当这些 Bean 可用时,它们将优先于任何与连接相关的配置参数,但是,与连接本身无关的配置参数(比如:控制连接池大小和行为的参数)仍将使用。

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

Spring Boot 最新支持版本

R哥整理了 Spring Boot 的最新版本支持情况:

版本发布时间停止维护时间停止商业支持
3.1.x2023-05-182024-05-182025-08-18
3.0.x2022-11-242023-11-242025-02-24
2.7.x2022-05-192023-11-182025-02-18
2.6.x2021-12-172022-11-242024-02-24
2.5.x2021-05-20已停止2023-08-24
2.4.x2020-11-12已停止2023-02-23
2.3.x2020-05-15已停止已停止
2.2.x2019-10-16已停止已停止
2.1.x2018-10-10已停止已停止
2.0.x2018-03-01已停止已停止
1.5.x2017-01-30已停止已停止

话说你们用的哪个 Spring Boot 版本?

如果你还没用过 Spring Boot,最后推荐下R哥的《Spring Boot 3 核心技术与最佳实践》最新书籍,包括底层实现原理及代码实战,知识点非常齐全,助你快速打通 Spring Boot 的各个环节。

Spring Boot 最新最全的实战代码已上传 Github:

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

好了,今天的分享就到这里了,后续R哥也会继续关注并分享更多的 Spring Boot 干货,关注公众号Java技术栈第一时间推送。


对了,一个好消息,一直有小伙伴问R哥有没有 Spring Boot 书籍的电子版,电子版没有,但是同款《Spring Boot 核心技术课》马上就要上线了。

一次订阅课程,永久学习,永久免费提供更新,有需要的可以加R哥微信,我朋友圈会第一时间发布首发特惠。

4ba481164ce8e83f3812fa25a9f1b423.jpeg

版权声明: 本文系公众号 "Java技术栈" 原创,转载、引用本文内容请注明出处,抄袭、洗稿一律投诉侵权,后果自负,并保留追究其法律责任的权利。

End

3f2e013333723aa46eb63bc935ea949b.png 学习 Spring Cloud 微服务的正确姿势!

eab6e26c7acd6ff85c6cc2b189a2144a.png 终于把 Spring Boot 3.0 写成书了!

50083aa5e9ce3fb5a0913c4de78394cc.png 用上 ChatGPT 啦,强的离谱!

2e41de6fa78f722d0d070963a386e7a9.png ChatGPT 视频课程来了,完全免费!

e7e27fef397c3cd5dd3ef19df27ae08e.png Java 20 正式发布,超神了。。

👇 点击阅读原文,玩转 ChatGPT!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/34328.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图谱实战 | Shopee 多语言商品知识图谱技术构建方法和应用

转载公众号 | DataFunTalk 导读 Shopee 是一家服务于全球多个市场的电商平台,致力于为消费者提供更加便捷,安全,快速良好的消费体验。Shopee 深耕多种不同的语言和市场,在这种国际化的服务平台上,需要处理多语言和混合…

前沿对话:中国AIGC新机遇,如何掘金大模型和应用双赛道

3月29日消息,首届中国AIGC产业峰会在京举行,大会由量子位主办,聚集起了领域内产学研代表,分享和探讨了包括大模型、生成式AI、ChatGPT等在内时下热议趋势和话题。 图片来源:由无界AI生成 在题为《中国AIGC新机遇》的圆…

【你问我答】与ChatAI智能对话—AI应用研习社

ChatGPT是一种基于深度学习的自然语言处理模型,它可以用于聊天机器人、智能客服、语音助手等多种应用场景。ChatGPT的核心技术是GPT(Generative Pre-trained Transformer),它是一种非常强大的语言模型,可以生成高质量的…

chatgpt赋能python:Python做聊天程序:打造智能交流

Python 做聊天程序:打造智能交流 Python 是一种易于学习、灵活性强、最近几年得到广泛应用的编程语言。在当今数字化时代,即便是日常生活中我们都需要与人交流,但人们社交媒体的繁荣已经印证了人们对在线交流工具的需求。以下将对 Python 如…

Android性能分析之---卡顿分析

一、性能分析---场景 低性能的APP常见的表现有启动/界面切换慢、动画掉帧、卡顿(启动卡,点击按钮卡,进入新页面卡等)、耗电,甚至出现应用无响应、程序崩溃的现象。当我们着手解决这些性能问题时,面对的第一…

Android检测应用卡顿

当应用发生卡顿时,我们如何得知是什么原因导致的呢?是机器性能差,还是代码问题,抑或是其他应用抢占CPU资源问题呢?特别是概率比较低,难以复现的卡顿问题。使用BlockCanary库可以帮助你记录应用发生卡顿时的…

Android进阶之用起来很卡,解决方法

最近开始安装使用android studio,痛苦的发现安装或者后期升级后as运行时非常的卡。于是,深入的研究解决方法并不断的尝试,最后总结出如下的两点。 一、工具软件配置 1、解决网络连接问题 (1)问题描述 检查你的 Andr…

Android开发——监控造成UI卡顿的原因

0. 前言 Android只有主线程才能更新UI。如果界面1秒钟刷新少于60次,即FPS小于60,用户就会产生卡顿感觉。 Android使用消息机制进行UI更新的,如果在主线程handler的dispatchMessage方法进行了耗时操作,就会发生UI卡顿。 本文原创…

Android app优化之导致app 卡顿慢的直接原因

大多数用户感知到的卡顿等性能问题的最主要根源都是因为渲染性能。从设计师的角度,他们希望App能够有更多的动画,图片等时尚元素来实现流畅的用户体验。但是Android系统很有可能无法及时完成那些复杂的界面渲染操作。Android系统每隔16ms发出VSYNC信号&a…

android页面卡顿定位,Android界面卡顿分析步骤详解

1、打开ddms工具,位于Sdk\tools\monitor.bat,双击 2、连上手机,选着进程,点击上面的start Method Profiling按钮 image.png 3、点击之后会弹出一个对话框,点击ok即可,然后操作你认为卡顿的界面。再点击一次刚刚的按钮。…

如何监测Android应用卡顿?这篇就够了

本文首发于微信公众号「Android开发之旅」,欢迎关注 Jetpack版Wan-Android项目地址:Android Jetpack架构开发组件化应用实战 欢迎star Flutter版Wan-Android项目地址:Flutter版Wan-Android 欢迎star 卡顿介绍 用户在使用我们应用的时候&am…

Android卡顿优化

一. Android渲染知识 1.1 绘制原理 Android系统要求每一帧都要在 16ms 内绘制完成,平滑的完成一帧意味着任何特殊的帧需要执行所有的渲染代码(包括 framework 发送给 GPU 和 CPU 绘制到缓冲区的命令)都要在 16ms 内完成,保持流畅…

解决安卓手机卡顿的七个技巧

转载自:http://www.7to.cn/news/detail/3446.html 导读:最近,有用户吐槽自己的手机越来越卡,其实这不是手机的问题,而安卓运行机制的缺陷。虽然安卓系统512MB也能流畅运行,但这仅仅是系统流畅,现在手机APP都…

全网最新:面向Android开发中的“卡顿问题及解决方法”

前言 Android开发中卡顿问题一直是个比较棘手又重要的问题,严重影响用户体验;卡顿是人的一种视觉感受,比如我们滑动界面时,如果滑动不流畅我们就会有卡顿的感觉,这种感觉我们需要有一个量化指标,在编程时如…

Android 卡顿调研

/ 今日科技快讯 / 近日,新华社发文评价盲盒经济称,盲盒不仅成为一个经济现象,也反映了当下中国年轻人,特别是“95后”一代的心理和生活状态。惊喜和期待的背后,“盲盒热”所带来的上瘾和赌博心理也在滋生畸形消费&…

安卓-页面卡顿-分析方法

界面卡顿影响的页面 : ListViewScrollView有动画的页面 分析步骤 打开调试开发者选项,GPU呈现模式分析如果蓝色部分比较高,说明是UI线程性能问题红色部分比较高,应该是DrawList比较复杂,这部分可能跟蓝色部分相关。目…

Android手机为何不再卡顿?性能优化才是安卓起飞关键

现在谈到挂载 Android系统的 手机,大部分人的印象早已不像前几年,几年前的安卓机那是用了一段时间就变得有点卡顿,用1年就卡的动弹不得,不得不每年都更换新机。 为什么以前会出现这种情况呢?其实主要是有些程序在运行…

Android App 反应卡顿解决方案

Android App 反应卡顿,从技术上将就是UI 渲染慢。 UI渲染是从您的应用程序生成一个框架并将其显示在屏幕上的行为。 为了确保用户与您的应用程序的交互顺利,您的应用程序应该在16ms内渲染帧数达到每秒60帧(为什么60fps?&#xff…

中文大模型评估基准:C-EVAL: A Multi-Level Multi-Discipline Chinese Evaluation Suite for Foundation Models

论文:https://arxiv.org/abs/2305.08322 网站:C-Eval: A Multi-Level Multi-Discipline Chinese Evaluation Suite for Foundation Models 一、导言 随着大语言模型的迅速发展,如何评估一个大模型的能力也成为了一个重要的话题&#xff0c…

「国际科技信息中心SCITIC论坛」从细胞、基因和人工智能,探讨智慧医疗的机遇和挑战...

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 2023年3月22日,由国际科技信息中心主办,AI TIME承办的SCITIC论坛“细胞,基因和人工智能:探索医学研究的未来”完美收官。SCITIC论坛由国际科技信息中心倾力打造&a…