spring boot的各个版本介绍

f1f52926919541cd974290c1a00b9be8.jpgSpring Boot 是一个用于创建独立、生产级别的基于 Spring 的应用程序的框架。自2014年首次发布以来,Spring Boot 经历了多个版本的迭代,每个版本都带来了新特性、性能改进和错误修复。下面是对Spring Boot一些主要版本的简要介绍:

 

 

 

Spring Boot 1.x 系列

 

Spring Boot 1.0.0 (2014年4月)

 

• 首个正式版本,引入了自动配置、起步依赖等核心概念。

 

• 简化了Spring应用的创建和部署。

 

Spring Boot 1.2.x

 

• 增强了对Actuator(监控和管理应用)的支持。

 

• 引入了Spring Boot CLI(命令行界面),方便快速原型开发。

 

• 增加了对Spring Profiles的外部化配置支持。

 

Spring Boot 1.3.x

 

• 引入了条件注解@ConditionalOnMissingBean等,增强了自动配置的灵活性。

 

• 支持Spring Cloud的集成,为微服务架构提供了基础。

 

• 改进了对日志框架的支持,引入了Spring Boot Admin作为应用监控工具。

 

Spring Boot 1.4.x

 

• 增加了对YAML配置文件的支持,提高了配置文件的可读性。

 

• 引入了@SpringBootApplication注解,作为@Configuration,@EnableAutoConfiguration和@ComponentScan的组合注解。

 

• 增强了Spring MVC的性能,优化了错误处理机制。

 

Spring Boot 1.5.x (LTS - 长期支持版)

 

• 引入了新的Actuator端点,增强了监控和诊断能力。

 

• 增加了对Kotlin语言的支持。

 

• 改进了对Spring Cloud和Spring Session的集成。

 

• 此版本在发布后得到了长期的支持和维护。

 

Spring Boot 2.x 系列

 

Spring Boot 2.0.0

 

• 基于Spring Framework 5构建,引入了响应式编程的支持。

 

• 更新了底层依赖库,如Hibernate、Tomcat等。

 

• 引入了@SpringBootTest注解,简化了测试配置。

 

• 增强了配置属性的验证和绑定机制。

 

Spring Boot 2.1.x

 

• 引入了Actuator的WebFlux支持,为响应式应用提供了监控能力。

 

• 增强了配置属性的灵活性和可扩展性。

 

• 改进了对Spring Cloud的集成,支持更高级的服务发现和配置管理。

 

• 引入了Lazy Initialization特性,提高了应用启动性能。

 

Spring Boot 2.2.x

 

• 增加了对R2DBC(Reactive Relational Database Connectivity)的支持,为响应式数据库访问提供了标准API。

 

• 引入了新的配置属性绑定机制,提高了配置的灵活性和可读性。

 

• 增强了Spring Boot CLI的功能,支持更快速的原型开发。

 

• 改进了对Docker和Kubernetes等容器化技术的支持。

 

Spring Boot 2.3.x

 

• 引入了对Gradle 6.x的支持,优化了构建性能。

 

• 增强了Actuator的健康检查机制,提供了更详细的健康信息。

 

• 改进了对Spring Cloud的集成,支持更高级的服务治理和配置中心功能。

 

• 引入了新的日志框架配置机制,提高了日志管理的灵活性和可读性。

 

Spring Boot 2.4.x

 

• 引入了新的配置属性绑定API,使配置更加灵活和强大。

 

• 增强了Spring Boot DevTools的功能,提高了开发效率。

 

• 改进了对WebFlux和Spring WebMVC的集成,提供了更丰富的Web开发特性。

 

• 增加了对Java 14和15的支持,并准备了向Java 16的迁移路径。

 

Spring Boot 2.5.x

 

• 引入了新的配置属性验证机制,提高了配置的健壮性。

 

• 增强了Actuator的端点安全性,提供了更细粒度的访问控制。

 

• 改进了对Spring Cloud的集成,支持服务网格和更高级的服务治理功能。

 

• 优化了应用的启动时间和内存占用。

 

Spring Boot 3.x 系列(预览中)

 

• Spring Boot 3.0将基于Spring Framework 6构建,并计划引入对Java 17的完全支持(最低要求)。

 

• 将移除对Java 8的支持,并引入对更多现代Java特性的利用。

 

• 计划进一步增强响应式编程的支持,并提供更丰富的配置和监控特性。

 

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于zynq在linux下的HDMI实战

ZYNQ系列文章目录 第一章:基于zynq在linux下的phy调试记录 第二章:qemu制作ubuntu文件系统 第三章:基于zynq在linux下的AXI-CAN实战 第四章:基于zynq在linux下的HDMI实战 文章目录 ZYNQ系列文章目录前言一、vivado中HDMI的配置1.…

LabVIEW 实现自动对焦的开发

自动对焦(Autofocus, AF)技术是通过分析图像或传感器信号,动态调整焦点位置以实现清晰成像或高精度定位的过程。在LabVIEW中,可以通过集成信号采集、数据处理、控制算法和硬件接口模块,实现多种自动对焦方法&#xff0…

机器人C++开源库The Robotics Library (RL)使用手册(四)

建立自己的机器人3D模型和运动学模型 这里以国产机器人天机TR8为例,使用最普遍的DH运动学模型,结合RL所需的描述文件,进行生成。 最终,需要的有两个文件,一个是.wrl三维模型描述文件;一个是.xml运动学模型描述文件。 1、通过STEP/STP三维文件生成wrl三维文件 机器人的…

直播电商系统源码搭建实战:快速开发多商户带货APP的指南

今天,笔者将从源码选择、功能设计、开发流程等方面,带你了解如何快速开发一个高效实用的直播电商系统。 一、明确需求:功能设计是基础 以下是一个多商户直播电商系统的核心功能模块: -商户管理模块 -直播带货模块 -商品管理模…

风力涡轮机缺陷检测数据集,86.6%准确识别率,11921张图片,支持yolo,PASICAL VOC XML,COCO JSON格式的标注

风力涡轮机缺陷检测数据集,86.6%准确识别率,11921张图片,支持yolo,PASICAL VOC XML,COCO JSON格式的标注 数据集下载 yolov11: https://download.csdn.net/download/pbymw8iwm/90206849 yolov…

委外加工业务如何调整原材料的消耗-MIGO A11-后续调整

业务背景:用户反馈委外加工业务回收后,产品已经销售,但委外加工结算时要对原材料消耗时行调整。如果没有销售,准备采用收货冲销后重新收货,但现在已经是2024年最后一天了。。。销售业务已经做完。不可能再冲销。其实这…

ultralytics库RT-DETR代码解析

最近读了maskformer以及maskdino的分割头设计,于是想在RT-DETR上做一个分割的改动,所以选择在ultralytics库中对RTDETR进行改进。 本文内容简介: 1.ultralytics库中RT-DETR模型解析 2. 对ultralytics库中的RT-DETR模型增加分割头做实例分割 …

25. C++继承 1 (继承的概念与基础使用, 继承的复制兼容规则,继承的作用域)

⭐上篇模板文章:24. C模板 2 (非类型模板参数,模板的特化与模板的分离编译)-CSDN博客 ⭐本篇代码:c学习 橘子真甜/c-learning-of-yzc - 码云 - 开源中国 (gitee.com) ⭐标⭐是比较重要的部分 目录 一. 继承的基础使用 1.1 继承的格式 1.2 …

宽带、光猫、路由器、WiFi、光纤之间的关系

1、宽带(Broadband) 1.1 宽带的定义宽带指的是一种高速互联网接入技术,通常包括ADSL、光纤、4G/5G等不同类型的接入方式。宽带的关键特点是能够提供较高的数据传输速率,使得用户可以享受到稳定的上网体验。 1.2 宽带的作用宽带是…

【AndroidAPP】权限被拒绝:[android.permission.READ_EXTERNAL_STORAGE],USB设备访问权限系统报错

一、问题原因 1.安卓安全性变更 Android 12 的安全性变更,Google 引入了更严格的 PendingIntent 安全管理,强制要求开发者明确指定 PendingIntent 的可变性(Mutable)或不可变性(Immutable)。 但是&#xf…

Inno Setup生成exe安装包

Inno Setup生成exe安装包 第一步:创建一个带向导的脚本文件 第二步:直接 Next,不要创建空的脚本文件 第三步:填写相关的应用程序信息 第四步:指定应用程序的安装目录相关的信息 第五步:选择可执行程序和相…

数据库MHA

MHA 什么是MHA -------- MASTER HIGH AVAILABILITY 建立在主从复制基础之上的故障切换到软件系统 主从复制的单点问题: 当主从复制当中,主服务器发生故障,会自动切换到一台从服务器,然后把从服务器升格为主,继续主…

vue2 - Day04 - 插槽、路由

插槽、路由 一、插槽(solt)1.1 概念1.2 基本用法1.3 分类1.3.1 默认插槽(Default Slot)例子: 1.3.2 具名插槽(Named Slots)语法: 1.3.3 作用域插槽(Scoped Slots&#xf…

微信小程序:定义页面标题,动态设置页面标题,json

1、常规设置页面标题 正常微信小程序中,设置页面标题再json页面中进行设置,例如 {"usingComponents": {},"navigationBarTitleText": "标题","navigationBarBackgroundColor": "#78b7f7","navi…

【数据可视化-10】国防科技大学录取分数线可视化分析

🧑 博主简介:曾任某智慧城市类企业算法总监,目前在美国市场的物流公司从事高级算法工程师一职,深耕人工智能领域,精通python数据挖掘、可视化、机器学习等,发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…

Spring Boot教程之四十一:在 Spring Boot 中调用或使用外部 API

如何在 Spring Boot 中调用或使用外部 API? Spring Boot 建立在 Spring 之上,包含 Spring 的所有功能。它现在越来越受到开发人员的青睐,因为它是一个快速的生产就绪环境,使开发人员能够直接专注于逻辑,而不必费力配置…

L25.【LeetCode笔记】 三步问题的四种解法(含矩阵精彩解法!)

目录 1.题目 2.三种常规解法 方法1:递归做 ​编辑 方法2:改用循环做 初写的代码 提交结果 分析 修改后的代码 提交结果 for循环的其他写法 提交结果 方法3:循环数组 提交结果 3.方法4:矩阵 算法 代码实践 1.先计算矩阵n次方 2.后将矩阵n次方嵌入递推式中 提…

面试题解,JVM的运行时数据区

一、请简述JVM运行时数据区的组成结构及各部分作用 总览 从线程持有的权限来看 线程私有区 虚拟机栈 虚拟机栈是一个栈结构,由许多个栈帧组成,一个方法分配一个栈帧,线程每执行一个方法时都会有一个栈帧入栈,方法执行结束后栈帧…

代码随想录算法【Day7】

DAY7 454.四数相加II 特点: 1.只用返回元组的个数,而不用返回具体的元组 2.可以不用去重 暴力思路:遍历,这样时间复杂度会达到O(n^4) 标准思路:用哈希法(场景:在一个集合里面判断一个元素…

网络渗透测试实验四:CTF实践

1.实验目的和要求 实验目的:通过对目标靶机的渗透过程,了解CTF竞赛模式,理解CTF涵盖的知识范围,如MISC、PPC、WEB等,通过实践,加强团队协作能力,掌握初步CTF实战能力及信息收集能力。熟悉网络扫描、探测HTTP web服务、目录枚举、提权、图像信息提取、密码破解等相关工具…