Spring Boot 2.2.0 發布,性能提升、支持 Java 13

2021-01-11 開源中國

Spring Boot 2.2.0 正式發布了,可從 repo.spring.io 或是 Maven Central 獲取。

性能提升

Spring Boot 2.2.0 的性能獲得了很大的提升。現在,應用程式啟動速度更快,並且消耗的內存更少。這在具有非常嚴格的內存約束的環境中特別有用。

延遲初始化

現在可以通過 spring.main.lazy-initialization 屬性啟用全局延遲初始化,以減少啟動時間。不過,使用此功能需要付出一定代價:

在進行任何延遲的初始化時,HTTP 請求的處理可能需要更長的時間 通常在啟動時會發生的故障現在在啟動後才會出現支持 Java 13

Spring Boot 2.2 現在支持 Java 13,同時仍與 Java 11 和 8 兼容。

不可變的 @ConfigurationProperties 綁定

配置屬性現在支持基於構造函數的綁定,該綁定使 @ConfigurationProperties 注釋的類不可變。可以通過使用 @ConstructorBinding 注釋 @ConfigurationProperties 類或其構造函數之一來啟用基於構造函數的綁定。可以在配置屬性綁定提供的構造函數參數上使用 @DefaultValue 和 @DateTimeFormat 之類的注釋。

RSocket 支持

已為 RSocket 添加了廣泛的自動配置,以及新的啟動程序 spring-boot-starter-rsocket。當 spring-security-rsocket 位於類路徑上時,還會自動配置 Spring Security 的 RSocket 集成。

其餘具體更新內容見發布公告。

相關焦點

  • Rocket-API 2.3.2 發布,基於 spring boot 的 API 敏捷開發框架
    告別加班,拒絕重複勞動,遠離搬磚概述"Rocket-API" 基於spring boot 的API敏捷開發框架,服務端50%以上的功能只需要寫SQL或者 mongodb原始執行腳本就能完成開發,另外30%也在不停的完善公共組件,比如文件上傳,下載,導出,預覽,分頁等等通過一二行代碼也能完成開發,剩下的20%也能依賴於動態編譯技術生成class的形式,不需要發布部署,不需要重啟來實現研發團隊的快速編碼
  • Spring Boot 2.4 第一個示例程序書寫代碼
    在默認情況下,Maven 會編譯 src/main/java 目錄中的原始碼(這個是與 Maven 使用的約定有關的,這個目錄結構可以修改,但是不建議修改,因為絕大部分人都會遵守這個約定)。根據 Maven 的原始碼約定,你需要按照下面的目錄路徑和文件名創建一個 Example.java 文件,完整的路徑如下: src/main/java/Example.java 。
  • StepChain 0.0.7 發布,Java 通用業務處理框架
    0.0.7更新日誌:1、新增支持Processor定時調度FixedRate、FixedDelay。2、修復0.0.6版本bug.
  • 基於Spring Boot + MVC 之控制器Controller實現
    寫在前面,首先我們要有一個Spring Boot的項目工程,查看 通過Idea創建Spring Boot java項目,先建立一個Spring Boot的項目工程,以下內容將在之前的demo基礎上,實現通過url向後臺請求一個學生名稱。
  • Spring Boot Admin快速打造監控平臺
    提供的功能,將各個微服務的狀態整合到一起,並提供良好的界面查看支持,並且能夠動態的修改實例日誌級別。Spring Boot Admin 開源地址:https://github.com/codecentric/spring-boot-adminSpring Boot Admin分為server和client,使用非常方便,server端可查看各個微服務的狀態,client端將微服務註冊到server端。
  • Spring Boot 1.3.0 M4 發布 - OSCHINA - 中文開源技術交流社區
    Spring Boot 1.3.0 M4 發布,該版本主要是修復一些 bug 和一些改進,更新內容如下:UpgradingNo special steps are required
  • Java程式設計師必看:Solr vip競價排名
    -- lookup parent from repository --></parent><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId
  • Spring Boot 2.4 MacPorts 安裝 CLI
    你可以通過使用下面的命令來安裝 Spring Boot CLI:$ sudo port install spring-boot-cliMacPorts 和 Homebrew 其實是類似的一個包管理工具。Mac 算是BSD的一個變種。所以,BSD 的包管理軟體 port 被移植到 Mac 上就顯的理所當然了。
  • zuihou-admin-boot 2.4 發布,SaaS 腳手架 - OSCHINA - 中文開源...
    修復zuihou-admin-ui上傳租戶頭像報錯和無法修改頭像成功的bug10.廢棄SystemApi模塊11.依賴升級    spring.boot.version -> 2.2.7.RELEASE    mybatis.version -> 3.5.4    mybatis-spring.version -> 2.0.4
  • Java經典面試題Spring是什麼 Spring框架入門詳解
    下面請看java代碼我們通過ClassPathXmlApplicationContext類傳入applicationContext.xml配置文件的相對路徑,創建出spring的容器對象ApplicationContext,在通過容器對象中的方法獲取到Spring容器為我們創建的user對象,其實Spring兩個容器,除了
  • Spring 4.2.8 和 4.3.3 發布 - OSCHINA - 中文開源技術交流社區
    Spring 4.2.8 和 4.3.3 發布了。
  • Mars-java 2.2.2 發布,不需要容器的 Java Web 開發框架
    默認請求方式為get 新增了RequestMethod註解,用來指定http接口的請求方式(不加默認為get) 將Resource註解換成了MarsWrite註解,用法保持不變(防止跟jdk自帶的Resource混淆) 將redis模塊從Mars-extends項目移到了主項目,以後連接redis不在需要導入Mars-extends擴展包了 對Mars-config項目進行了整理,並且將依賴的Mars-java
  • Spring Boot自動裝配原理源碼分析
    我們在第一個方法處打一個斷點debug一下,發現new PackageImport(metadata).getPackageName()的結果其實就是一個包名,這時我們很容易的可以想到,這個包就是Spring Boot主配置類所在的包再看一眼metadata,果然,就是主配置類因此,這個註解的作用就是將主配置類所在的包作為自動配置包進行管理(2)
  • aio-enhance v1.0.2 發布,Java AIO 內核增強類庫
    一、項目背景2.1 解決平臺兼容性問題。Java 原生 AIO 在 Mac 作業系統下存在兼容性問題,進行性能壓測會偶發性的系統崩潰。2.2 修復官方 AIO 架構缺陷Java 原生 AIO 在底層架構設計上存在缺陷(參考:Java AIO通信模型)。多核 CPU 環境下處理高並發請求,會引發比較嚴重的鎖競爭現象,以致無法充分發揮機器性能。普通4核機器競爭壓力不大,AIO 的運行表現實測優於NIO。但隨著 CPU 核數的增加,AIO 的性能優勢逐漸下降。
  • 苞米豆 — 谷歌驗證碼快速啟動器 1.1.0 發布
    https://gitee.com/baomidou/kaptcha-spring-boot-starter修復了一個重複校驗引起的Np bug支持了jdk 1.7
  • 提升java編程性能優化知識 程式設計師必看這幾點
    對於學習java的學子也是如此,那麼java程式設計師如何提高編程性能呢,有哪些小知識或者技巧呢,怎麼樣才能在編程性能優化方面有所提升呢?  1.儘量在合適的場合使用單例  使用單例可以減輕加載的負擔,縮短加載的時間,提高加載的效率,但並不是所有地方都適用於單例,簡單來說,單例主要適用於以下三個方面: