Spring Boot 3.2发布:大量Java 21的支持上线,改进可观测性
就在今天凌晨,Spring Boot 3.2正式发布了!该版本是在Java 21正式发布之后的重要支持版本,所以在该版本中包含大量对Java 21支持的优化。
下面,我们分别通过Spring官方发布的博文和Josh Long长达80+分钟的介绍视频,一起认识一下Spring Boot 3.2最新版本所带来的全新内容。
- 官方博文:https://spring.io/blog/2023/11/23/spring-boot-3-2-0-available-now
- Josh Long的视频:https://www.youtube.com/watch?v=dMhpDdR6nHw
最新特性
通过官方博文的介绍,可以有个大致的最新特性了解,其中包括:
- 支持虚拟线程
- 对JVM Checkpoint Restore的初步支持(CRaC项目)
- SSL 捆绑包重新加载
- 大量可观察性改进
- 支持 RestClient
- 支持 JdbcClient
- 支持 Jetty 12
- Apache Pulsar 对 Spring 的支持
- 对 Kafka 和 RabbitMQ 的 SSL 捆绑支持
- 重新设计的嵌套 Jar 处理
- Docker 镜像构建改进
此外,对于依赖的更新列表,因为比较长,这里DD就不列出来了,感兴趣的可以点击这里查看
视频介绍
下面,可以把关注点放到John Long的介绍视频里。一如既往的干货视频!通过在线编码的方式,直观的给大家展示新功能的魅力。
Tips:Josh Long的视频如果您不方便访问的话,DD这边给大家下载好了,同时也做了一份翻译字幕和中文配音视频。有需要观看的视频的小伙伴可以通过关注公众号:程序猿DD,发送关键词:springboot,获取下载链接。
下面是关于视频的总结,可以先大概看一下视频内容,感兴趣的话可以下载观看:
[00:16] Spring Boot 3.2带来了许多新功能,包括支持虚拟线程和Project Loom、改进的可观察性支持、可重载的SSL支持等。
- Spring Boot 3.2带来了许多新功能,包括虚拟线程和Project Loom。
- Java 21是Spring Boot 3.2的一个重要特性。
- Java 21引入了一些新的语法变化,如封闭类型、模式匹配、智能开关表达式和记录。
- Java 21被称为数据导向编程,旨在改进Java在大型单体应用中的表现。
[10:13] 使用字符串格式化和多行变量非常方便,还有一些新的特性,如模式匹配和解构操作符。
- 字符串格式化和多行变量是方便的选项。
- 新特性包括记录、密封类型、智能开关表达式和模式匹配。
- 目前还没有解构操作符,但正在开发中。
- 项目Loom虚拟线程是Java 21中的重要特性。
[20:27] 在这个片段中,演示了创建一个跳过重复项的集合,并使用线程来记录当前线程的名称和休眠100毫秒。
- 创建了一个跳过重复项的集合。
- 使用线程记录当前线程的名称。
- 休眠100毫秒。
- 演示了使用虚拟线程来执行Java代码。
[30:41] 在Spring Boot 3.2中,我们将使用Java 21、Maven和一些支持库来构建一个与SQL数据库通信的应用程序。
- 使用了test containers API来启动Docker镜像。
- 使用了spring boot starter jdbc依赖来连接PostgreSQL数据库。
- 通过添加特定的配置来启动PostgreSQL容器。
[40:57] 使用Spring Boot 3.0中的声明式接口可以更简化代码,提供一个给定URL请求的猫事实。
- 可以使用新的JDBC和REST客户端来调用端点。
- 使用Project Loom和Drava 21,可以在Spring应用程序的不同层级中获得一致的虚拟线程集成。
- 这种方法既具备了阻塞API的便利性,又不会丧失可用性。
- 可以使用声明式接口来实现给定URL请求的猫事实。
[51:09] Spring框架中有一个称为SmartLifeCycle的接口,可以用来表示典型Spring生命周期的方法。
- SmartLifeCycle是一个更智能的版本,用于让用户消费。
- SmartLifeCycle的方法与检查点方法对应。
- 可以使用SmartLifeCycle来管理应用程序的启动和停止。
- 在这个例子中,通过实现SmartLifeCycle接口,可以实现应用程序的启动和停止功能。
[01:01:23] 通过一个文件来生成唯一的键值对,并且配置了一个自签名的SSL证书。
- 在一个文件中写入数字,每次运行时递增并写入文件。
- 生成的键值对是唯一的,用于展示随时间变化。
- 配置了自签名的SSL证书,并通过指定端口号8443来使用。
[01:11:38] 在本地机器上,我们可以通过Zipkin来查看分布式追踪的图形
- 使用Docker compose启动Zipkin实例
- 在应用代码中增加采样概率
- 通过aop支持在类路径上添加注解来显示跟踪ID和跨度ID
- 通过Zipkin可以查看请求日志和服务之间的跳转
如果您学习过程中如遇困难?可以加入我们超高质量的Spring技术交流群,参与交流与讨论,更好的学习与进步!更多Spring Boot教程可以点击直达!,欢迎收藏与转发支持!
欢迎关注我的公众号:程序猿DD。第一时间了解前沿行业消息、分享深度技术干货、获取优质学习资源

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
BIRCH算法全解析:从原理到实战
本文全面解析了BIRCH(平衡迭代削减聚类层次)算法,一种用于大规模数据聚类的高效工具。文章从基础概念到技术细节,再到实战应用与最佳实践,提供了一系列具体的指导和例子。无论你是数据科学新手,还是有经验的实践者,这里都包含了深入理解和成功应用BIRCH算法所需的关键信息。 关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。 一、引言 什么是BIRCH算法 BIRCH(Balanced Iterative Reducing and Clustering using Hierarchies)是一种用于大规模数据集上的层次聚类算法。该算法于1996年首次提出,目的是在不牺牲聚类质量的前提下,减少大数据聚类问题的计算复杂性。 BIRCH算法的主要优点是其可以处理大规模的数据集,并且仅需要一次或少数几次的数据扫描。该算法通过引入一种特殊的数据结构——CF(Clustering Feature)树——来实现数据的压缩和聚类。CF树不仅捕...
- 下一篇
函数计算的新征程:使用 Laf 构建 AI 知识库
Laf 已成功上架 Sealos 模板市场,可通过 Laf 应用模板来一键部署! 这意味着 Laf 在私有化部署上的扩展性得到了极大的提升。 Sealos 作为一个功能强大的云操作系统,能够秒级创建多种高可用数据库,如 MySQL、PostgreSQL、MongoDB 和 Redis 等,也可以一键运行各种消息队列和微服务,甚至 GPU 集群上线后还可以跑各种 AI 大模型。 将 Laf 一键部署到 Sealos 中,我们就可以在 Laf 中直接通过内网调用 Sealos 提供的所有这些能力。无论用户需要什么样的后端支持,只需在 Sealos 上运行相应的服务即可。这种集成模式不仅提高了资源的利用效率,而且还提供了无缝的技术集成,使得 Laf 成为一个更加强大和多功能的 Serverless 平台,弥补了传统 Serverless 平台在后端能力方面的不足。 Sealos 强大的模板市场提供了丰富的应用生态,用户可以在模板市场中一键部署各种应用。本文以 Elasticsearch 为例,展示如何在 Laf 中调用 Sealos 模板市场中部署的 Elasticsearch 来搭建一个向...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS关闭SELinux安全模块
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Hadoop3单机部署,实现最简伪集群
- CentOS6,7,8上安装Nginx,支持https2.0的开启