首页 > 编程语言 >Spring Boot 3.2发布:大量Java 21的支持上线,改进可观测性

Spring Boot 3.2发布:大量Java 21的支持上线,改进可观测性

时间:2023-11-24 10:56:09浏览次数:37  
标签:Java 21 Spring Boot 3.2 线程

就在今天凌晨,Spring Boot 3.2正式发布了!该版本是在Java 21正式发布之后的重要支持版本,所以在该版本中包含大量对Java 21支持的优化。

下面,我们分别通过Spring官方发布的博文和Josh Long长达80+分钟的介绍视频,一起认识一下Spring Boot 3.2最新版本所带来的全新内容。

最新特性

通过官方博文的介绍,可以有个大致的最新特性了解,其中包括:

  • 支持虚拟线程
  • 对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。第一时间了解前沿行业消息、分享深度技术干货、获取优质学习资源

标签:Java,21,Spring,Boot,3.2,线程
From: https://www.cnblogs.com/didispace/p/17853260.html

相关文章

  • 【Spring】Spring5+Spring5MVC+Mybatis+H2の環境構築(高)
    参考URL:(初)https://www.cnblogs.com/lnsylt/p/10258457.html(中)https://www.cnblogs.com/lnsylt/p/10315455.html①pom.xml1<?xmlversion="1.0"encoding="UTF-8"?>2<projectxmlns="http://maven.apache.org/POM/4.0.0"......
  • java-EasyExcel模板导出
    前言: 需求:根据自定义模板导出Excel,包含图片、表格,采用EasyExcel 提示:EasyExcel请使用3.0以上版本,对图片操作最重要的类就是WriteCellData<Void>如果你的easyexcel没有这个类,说明你的版本太低,请升级到3.0以上<dependency><groupId>com.alibaba</groupId><ar......
  • java 实现断点续传的上传功能
    下面是一个简单的实现Java断点续传上传功能的代码示例,其中使用了HttpURLConnection和RandomAccessFile类:publicclassResumableUploader{privatestaticfinalintBUFFER_SIZE=4096;privatestaticfinalStringFILE_PATH="yourFilePath";privatestaticfi......
  • 基于html5+javascript技术开发的房贷利率计算器,买房的码农们戳进来
    房贷计算器是一款专为购房者设计的实用工具应用,其主要功能是帮助用户详细计算房贷的还款金额、利息以及还款计划等。通过这款软件,用户可以更加便捷地了解到自己的还款情况和计划,从而更好地规划自己的财务。下面将对房贷计算器进行详细的介绍。体验地址房贷计算器体验地址关键代码<t......
  • Java中如何比较两个日期的大小
    日期比较1.自定义时间与当前时间比较代码展示 运行结果 2.两个自定义时间比较代码展示 运行结果 ......
  • java实现大文件的分片上传与下载(springboot+vue3)
    1.1项目背景对于超大文件上传我们可能遇到以下问题•大文件直接上传,占用过多内存,可能导致内存溢出甚至系统崩溃•受网络环境影响,可能导致传输中断,只能重新传输•传输时间长,用户无法知道传输进度,用户体验不佳1.2项目目标对于上述问题,我们需要对文件做分片传输。分片传输就是......
  • java中ArrayList和LinkedList的区别
    Java中ArrayList和LinkedList都是List集合的实现类,它们都可以用来存储一组有序的元素,但是它们的内部实现方式不同,在使用时也有不同的适用场景。ArrayList是一个基于动态数组的实现,它可以容纳任何类型的对象,并且允许对元素进行随机访问。当添加或者删除元素时,ArrayList需要移动内......
  • Java开发者的Python快速进修指南:面向对象基础
    当我深入学习了面向对象编程之后,我首先感受到的是代码编写的自由度大幅提升。不同于Java中严格的结构和约束,Python在面向对象的实现中展现出更加灵活和自由的特性。它使用了一些独特的关键字,如self和cls,这些不仅增强了代码的可读性,还提供了对类和实例的明确引用。正如Java,Python也......
  • The 2021 ICPC Asia Shenyang Regional Contest
    Preface合肥前的最后一场VP了,本来计划是我和祁神两个人打,但后面徐神还是来救场了然后这场我们过的最难的两题都是徐神切的,直接给我们抬进Au区了属于是而且徐神最后也差一点写出G(TLEon72),同时也一眼秒了D(没时间写了),看来这场让三个徐神来打感觉10题随便出线了A.ABiteofTey......
  • Java设计模式之单例模式
    单例模式(SingletonPattern)是一种常用的设计模式,它用于限制一个类只能创建一个实例,并提供一个全局访问点。在Java中,实现单例模式的关键点包括:私有的构造函数:为了防止其他类创建该类的实例,我们需要将构造函数设为私有。静态的实例变量:我们需要一个静态的变量来存储该类的唯一......