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条评论来说两句吧...