最新发布 Spring Boot 3.2.0 新特性和改进

图片

一、Spring Boot 简介

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。这个框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。 以下是Spring Boot的一些主要特点:

  • 独立运行:Spring Boot应用可以直接打包成可执行的JAR文件,这样就可以在任何地方运行,不再需要安装和部署WAR文件。
  • 简化配置:Spring Boot提供了自动配置功能,可以根据项目中的依赖自动配置相应的组件,大大减少了手动配置的工作量。
  • 嵌入式Web服务器:Spring Boot内置了Tomcat、Jetty等Web服务器,无需单独部署Web服务器就可以运行Web应用。
  • 提供生产就绪的功能:Spring Boot提供了一系列生产级别的功能,如监控、指标收集、安全等。
  • 无代码生成和XML配置:Spring Boot的设计原则之一就是避免代码生成和XML配置,尽量做到零XML配置。
  • 丰富的插件支持:Spring Boot有大量的插件,可以与各种流行的开发工具和技术无缝集成。
  • 社区活跃:Spring Boot是当前非常活跃的Java技术,其社区非常活跃并且版本更新速度很快。例如,Spring Boot 3.2.0版本就正式发布了,这个版本增加了大量新功能和改进。体现了其对新技术的高度适应性和快速迭代的特点。

这些特性使得Spring Boot特别流行,现在新的项目几乎都在使用Spring Boot框架进行开发。

二、Spring Boot 3.2.0系统要求

Java 17+,兼容Java21;

Spring Framework 6.1.1+;

Maven 3.6.3+;

Gradle 7.5+;

三、Servlet 容器

Spring Boot 3.2.0 支持以下嵌入式servlet容器:

NameServlet Version

Tomcat 10.1

6.0

Jetty 12.0

6.0

Undertow 2.3

6.0

四、Spring Boot 3.2.0 新特性和改进

  1. 支持虚拟线程:Spring Boot 3.2 引入了对虚拟线程的支持,使得开发者可以在单个 JVM 上运行多个线程,从而提高应用程序的并发性能。

  2. 对 JVM Checkpoint Restore(Project CRaC)的初始支持:CRaC 是一个用于实现 JVM 状态恢复的项目,Spring Boot 3.2 提供了对 CRaC 的初始支持,使得开发者可以更方便地在发生故障时恢复应用程序的状态。

  3. SSL 捆绑包重新加载:Spring Boot 3.2 改进了 SSL 捆绑包的重新加载机制,使得在更改证书或密钥文件时,无需重启应用程序即可使更改生效。

  4. 大量可观测性改进:Spring Boot 3.2 对可观测性进行了大量改进,包括对 Micrometer、Prometheus、Zipkin 和 Jaeger 等流行监控和追踪工具的支持。

  5. 对 RestClient 的支持:Spring Boot 3.2 提供了对 RestClient 的支持,使得开发者可以更方便地调用其他微服务的 API。

  6. 对 JdbcClient 的支持:Spring Boot 3.2 提供了对 JdbcClient 的支持,使得开发者可以更方便地调用数据库操作。

  7. 支持 Jetty 12:Spring Boot 3.2 支持 Jetty 12,这是一个高性能的 HTTP 服务器和客户端库。

  8. 支持 Spring for Apache Pulsar:Spring Boot 3.2 提供了对 Spring for Apache Pulsar 的支持,使得开发者可以更方便地构建基于 Pulsar 的消息队列应用程序。

  9. 对 Kafka 和 RabbitMQ 的 SSL 捆绑包支持:Spring Boot 3.2 改进了对 Kafka 和 RabbitMQ 的 SSL 捆绑包的支持,使得在与这些消息队列服务进行通信时,可以使用加密连接。

  10. 重新设计了嵌套 Jar 处理:Spring Boot 3.2 对嵌套 Jar(Nested Jar)的处理进行了重新设计,解决了在某些情况下可能出现的问题。

  11. Docker 映像构建改进:Spring Boot 3.2 对使用 Maven 和 Gradle 构建的应用程序的 Docker 映像构建进行了改进,提高了构建速度和可靠性。

五、结语

Spring Boot 3.2.0 是 Spring Boot 框架的最新版本,它带来了许多新特性和改进。Spring Boot 3.2.0 对自动配置进行了改进,使其更加灵活和可定制;增强了应用程序的安全性,对性能进行了改进,包括减少了启动时间和提高了吞吐量。

图片

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

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

相关文章

也可Adobe Animate

Animate CC 由原Adobe Flash Professional CC 更名得来,2015年12月2日:Adobe 宣布Flash Professional更名为Animate CC,在支持Flash SWF文件的基础上,加入了对HTML5的支持。并在2016年1月份发布新版本的时候,正式更名为…

记录一次vscode markdown的图片路径相关插件学习配置过程

插件及说明查找过程 csdn搜索markdown图片路径,找到关于这一款插件的回答。打开vscode拓展搜索Paste Image这款插件,看到下载量挺高的,应该不赖。 点击仓库,进入该插件开源的github仓库,查看README文件阅读说明. 淡然在Vscode 插件项目下的细…

Linux中文件的打包压缩、解压,下载到本地——zip,tar指令等

目录 1 .zip后缀名: 1.1 zip指令 1.2 unzip指令 2 .tar后缀名 3. sz 指令 4. rz 指令 5. scp指令 1 .zip后缀名: 1.1 zip指令 语法:zip [namefile.zip] [namefile]... 功能:将目录或者文件压缩成zip格式 常用选项&#xff1a…

ZLMediakit-method ANNOUNCE failed: 401 Unauthorized(ffmpeg、obs推流rtmp到ZLM发现的问题)

错误截图 解决办法 修改配置文件config.ini 改成0 修改之后 重启服务 systemctl restart zlm*推流成功

LeetCode(47)合并区间【区间】【中等】

目录 1.题目2.答案3.提交结果截图 链接: 合并区间 1.题目 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中…

第九节HarmonyOS 常用基础组件5-LoadingProgress

一、LoadingProgress LoadingProgress组件用于显示加载动效的组件,比如应用的登录界面,当我们点击登录的时候,显示的“正在登录”的进度条状态。LoadingProgress的使用非常简单,只需要设置颜色和宽高就可以了。 Entry Component …

目标检测——Fast R-CNN算法解读

论文:Fast R-CNN 作者:Ross Girshick 链接:https://arxiv.org/abs/1504.08083 代码:https://github.com/rbgirshick/fast-rcnn 目录 1、算法概述2、Fast R-CNN细节2.1The RoI pooling layer2.2 Fine-tuning for detection2.3 Fast…

工业机器视觉megauging(向光有光)使用说明书(十三,资源发现bug,已经更新)

megauging(向光有光)旧资源有bug,已经更新,如下: 第一工具,combox默认0,选择后,鼠标点击“获取结果”,相机就取一帧图像处理后显示出来: 第一工具&#xff0…

YOLOv5算法进阶改进(7)— 将主干网络SPPF更换为SimSPPF / SPP-CSPC / SPPF-CSPC

前言:Hello大家好,我是小哥谈。SimSPPF是YOLOv6中提出的一种改进的空间金字塔池化方法,它是SPPF的升级版。SimSPPF通过在不同尺度上使用不同大小的池化核来提取特征,从而提高了检测器的性能。与SPPF相比,SimSPPF可以在不增加计算成本的情况下提高检测器的性能。本节课就教…

Flask使用线程异步执行耗时任务

1 问题说明 1.1 任务简述 在开发Flask应用中一定会遇到执行耗时任务,但是Flask是轻量级的同步框架,即在单个请求时服务会阻被塞,直到任务完成(注意:当前请求被阻塞不会影响到其他请求)。 解决异步问题有…

记录 | photoshop移动选区

期望达到的效果: 选择一块区域,并移动它 操作: (1) 选择矩形选框工具, (2) 对区域进行选取, (3) 选择移动工具, (4) 移动选区,效果如下,

已知数组A[1..n]中元素类型为非负整数,设计算法将其调整为左右两部分,左边所有为奇数,右边所有为偶数,并要求算法的时间复杂度为O(n)

//左边奇数右边偶数 void Swap(int* a, int* b) {int tmp *b;*b *a;*a tmp; } void LeftRight(int arr[],int n) {int i 0;int j n - 1;while(i<j){if (arr[i] % 2 0 && arr[j] % 2 1) {Swap(&arr[i], &arr[j]);i;j--;}else if (arr[i] % 2 1 &…

Next.js初步使用

文章目录 安装和运行页面静态文件 React初步&#xff0c;但不熟悉React也可以学习本文。 安装和运行 Next.js是一个基于React的服务端渲染框架&#xff0c;可以实现构建高性能、可扩展的React应用&#xff0c;提供了很多方便的工具和功能&#xff0c;包括自动代码分割、服务器…

Java研学-IO流(三)

六 字节流 – 字节输出流系列 OutPutStream体系 1 OutPutStream系列 – 字节输出流 // 表示字节输出流所有类的超类&#xff0c;输出流接受输出字节并将其发送到某个接收器 public abstract class OutputStreamFileOutputStream/BufferedOutputStream 2 FileOutputStream类设…

pyqt5使用pyqtgraph实现动态热力图

pyqt5使用pyqtgraph实现动态热力图 一、效果图 二、流程 1、打开Designer创建一个UI界面 2、把UI转成py 3、创建一个main.py文件 4、在main文件中渲染画布、创建初始数据、画热力图、创建更新数据线程、绑定按钮触发事件三、UI界面 其中h_map.py代码如下: # -*- coding: ut…

1688API接口系列,1688开放平台接口使用方案(商品详情数据+搜索商品列表+商家订单类)

1688商品详情接口是指1688平台提供的API接口&#xff0c;用于获取商品详情信息。通过该接口&#xff0c;您可以获取到商品的详细信息&#xff0c;包括商品标题、价格、库存、描述、图片等。 要使用1688商品详情接口&#xff0c;您需要先申请1688的API权限&#xff0c;并获取ac…

变量和引用

变量和引用 2.1.深入认识变量 2.1.1.什么是变量 变量是在程序中保存用户数据的一段内存存储空间&#xff0c;变量名是内存空间的首地址 变量三要素&#xff1a;名称、类型、值 2.1.2.变量的名称 组成: 字母、数字、下划线组成&#xff0c;不能以数字开头 变量名称的长…

蓝桥杯每日一题2023.12.2

题目描述 蓝桥杯大赛历届真题 - C 语言 B 组 - 蓝桥云课 (lanqiao.cn) 题目分析 答案&#xff1a;3598180 由题目分析可以知道&#xff0c;给小明发的牌一共有13种类型&#xff0c;每种类型的牌一共有四张。对于每种牌&#xff0c;我们都有5种选择&#xff0c;不拿、拿一张、…

LeetCode - 965. 单值二叉树(C语言,二叉树,配图)

二叉树每个节点都具有相同的值&#xff0c;我们就可以比较每个树的根节点与左右两个孩子节点的值是否相同&#xff0c;如果不同返回false&#xff0c;否则&#xff0c;返回true。 如果是叶子节点&#xff0c;不存在还孩子节点&#xff0c;则这个叶子节点为根的树是单值二叉树。…

分析实现HarmonyOS中的Linux内核架构模式

在当今的科技领域&#xff0c;操作系统是各种智能设备运行的关键所在。而在这方面&#xff0c;华为的鸿蒙系统备受瞩目。那么&#xff0c;鸿蒙系统技术架构是怎样的呢&#xff1f;本文将为您揭开这一神秘面纱。 首先&#xff0c;我们需要了解鸿蒙系统的基本架构。鸿蒙系统采用…