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。前沿技術早知道,彎道超車有希望!積累超車資本,從關注DD開始!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/166215.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/166215.shtml
英文地址,請注明出處:http://en.pswp.cn/news/166215.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

飛翔的鳥游戲

一.準備工作 首先創建一個新的Java項目命名為“飛翔的鳥”,并在src中創建一個包命名為“com.qiku.bird",在這個包內分別創建4個類命名為“Bird”、“BirdGame”、“Column”、“Ground”,并向需要的圖片素材導入到包內。 二.代碼呈現 pa…

【醫學圖像處理】超詳細!PET圖像批量預處理

目錄 一、單個PET圖像預處理1、使用[MRIConvert](https://pan.baidu.com/s/1cn3kgeVRir8HvP6HHm0M0Q?pwd5rt5)處理DCM2、MRI和PET數據預處理過程1) 打開matlab命令行輸入spm pet,打開SMP12,界面如下2) Realign,只需要…

【Vue】插值表達式

作用&#xff1a;利用表達式進行插值渲染 語法&#xff1a;{ { 表達式 } } 目錄 案例一&#xff1a; 案例二&#xff1a; 案例三&#xff1a; ?編輯 注意&#xff1a; 案例一&#xff1a; <!DOCTYPE html> <html lang"en"> <head><me…

項目中如何配置數據可視化展現

在現今數據驅動的時代&#xff0c;可視化已逐漸成為數據分析的主要途徑&#xff0c;可視化大屏的廣泛使用便應運而生。很多公司及政務機構&#xff0c;常利用大屏的手段展現其實力或演示業務&#xff0c;可視化的效果能讓觀者更快速的理解結果并直觀的看到數據展現。因此&#…

加速軟件開發:自動化測試在持續集成中的重要作用!

持續集成的自動化測試 如今互聯網軟件的開發、測試和發布&#xff0c;已經形成了一套非常標準的流程&#xff0c;最重要的組成部分就是持續集成&#xff08;Continuous integration&#xff0c;簡稱CI&#xff0c;目前主要的持續集成系統是Jenkins&#xff09;。 那么什么是持…

教育+AIGC開局之年:教育派作業幫、科技派科大訊飛同路不同道

配圖來自Canva可畫 與往年相比&#xff0c;今年的雙11顯得格外冷清&#xff0c;GMV&#xff08;商品交易總額&#xff09;數據和增長數據無人提及&#xff0c;京東、淘寶天貓、抖音、快手等平臺的火藥味都淡了。一片祥和有序的雙11氛圍中&#xff0c;昔日的K12教育企業與科技企…

sqlserver寫入中文亂碼問題

sqlserver寫入中文亂碼問題解決方案 首先查看sqlserver數據庫編碼 首先查看sqlserver數據庫編碼 查詢語句&#xff1a;SELECT COLLATIONPROPERTY(Chinese_PRC_Stroke_CI_AI_KS_WS, CodePage)&#xff1b; 對應的編碼&#xff1a; 936 簡體中文GBK 950 繁體中文BIG5 437 美國/加…

算法的10大排序

10大排序算法--python 一顆星--選擇排序一顆星--冒泡排序一顆星--插入排序兩顆星--歸并排序&#xff08;遞歸-難&#xff09;三顆星--桶排序三顆星--計數排序四顆星--基數排序四顆星--快速排序&#xff0c;尋找標志位&#xff08;遞歸-難&#xff09;四顆星--又是比較難的希爾排…

Python工具箱系列(四十六)

PDF&#xff08;Portable Document Format&#xff09;是一種便攜文檔格式&#xff0c;它基于PostScripty這種腳本語言。 ?? PDF文檔操作 PDF&#xff08;Portable Document Format&#xff09;是一種便攜文檔格式&#xff0c;它基于PostScripty這種腳本語言&#xff0c;它…

清華大學提出全新加速訓練大模型方法SoT

近日&#xff0c;微軟研究和清華大學的研究人員共同提出了一種名為“Skeleton-of-Thought&#xff08;SoT&#xff09;”的全新人工智能方法&#xff0c;旨在解決大型語言模型(LLMs)生成速度較慢的問題。 盡管像GPT-4和LLaMA等LLMs在技術領域產生了深遠影響&#xff0c;但其處…

提供電商數據|帶你簡單認識天貓API接口相關參數文檔調用說明

什么是API接口 API接口(Application Programming Interface Interface)是應用程序與開發人員或其他程序互相通信的方式。它允許開發者訪問應用程序的數據和功能。 API接口,軟件的“握手”與“交流”之道,軟件世界的“好基友”。想讓軟件聊得來?想開發App卻無從下手?API來相救…

【騰訊云云上實驗室-向量數據庫】Tencent Cloud VectorDB為非結構化數據查詢插上飛翔的翅膀——以企業知識庫為例

前言 以前我曾疑惑&#xff0c;對于非結構化的內容&#xff0c;如一張圖片或一段視頻&#xff0c;如何實現搜索呢&#xff1f;圖片或視頻作為二進制文件&#xff0c;我們如何將其轉化為可搜索的數據并存儲起來&#xff0c;然后在搜索時將其還原呢&#xff1f; 后來我發現&…

5個高防CDN的特點

1. 支持泛解析自定義HTTPS/SSL隱藏源IP。 2. 支持緩存加速永久在線SEO優化。當網站原服務器宕機時&#xff0c;如果開啟了此功能&#xff0c;用戶仍然可以訪問網站&#xff08;用戶看到的是 緩存數據&#xff09;&#xff0c;從而達到了網站永不中斷服務的效果&#xff0c;可以…

Minio8版本沖突問題

今天在配置minio的時候遇到了一個報錯 Error starting ApplicationContext. To display the conditions report re-run your application with debug enabled. 2023-11-24 10:31:42.897 ERROR 14312 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter : *******************…

blk_mq_init_queue函數學習記錄

blk-mq編程&#xff0c;主要要調用兩個函數進行初始化工作&#xff0c;blk_mq_init_queue這是第二個。該函數先是申請了struct request_queue結構&#xff0c;這個請求隊列后面用于賦值給磁盤那個結構體的相應成員。 struct request_queue *blk_mq_init_queue(struct blk_mq_t…

python3到文件的讀取以及輸出

excel表格的讀取和輸入輸出 python中txt的讀取和輸入輸出 txt輸出報錯&#x1f447; UnicodeEncodeError: ascii codec cant encode characters in position 154-157: ordinal not in range(128)解決方法

Tomcat 配置

1&#xff1a; 打開 2&#xff1a;選擇版本號&#xff0c;我這邊是 1.7 3&#xff1a;添加 web 4: 添加jar包 5&#xff1a;添加 6&#xff1a;添加 Tomcat

【每日一題】1410. HTML實體解析器-2023.11.23

題目&#xff1a; 1410. HTML 實體解析器 「HTML 實體解析器」 是一種特殊的解析器&#xff0c;它將 HTML 代碼作為輸入&#xff0c;并用字符本身替換掉所有這些特殊的字符實體。 HTML 里這些特殊字符和它們對應的字符實體包括&#xff1a; 雙引號&#xff1a;字符實體為 &…

vim翻頁快捷鍵

Vim翻頁 整頁 Ctrlf向下翻頁&#xff0c;下一頁&#xff0c;相當于Page DownCtrlb向上翻頁&#xff0c;上一頁&#xff0c;相當于Page Up 半頁 Ctrld向下半頁&#xff0c;下一半頁&#xff0c;光標下移Ctrlu向上半頁&#xff0c;上衣半頁&#xff0c;光標上移 按行 Ctrle…

vue2【組件的構成】

目錄 1&#xff1a;什么是組件化開發 2&#xff1a;vue中的組件化開發 3&#xff1a;vue組件的三個組成部分 4&#xff1a;組件中定義方法&#xff0c;監聽器&#xff0c;過濾器&#xff0c;計算屬性節點。 5&#xff1a;template中只允許唯一根節點&#xff0c;style默認…