Spring 5 有哪些新特性

自從 2013 年 12 月 Spring 4.0 發佈以來,Spring 又該到了出一個新的大版本的時候了。實際上到如今 Spring 的最新版本已是 5.0.1,但用起來的人仍然不是不少。一個主要的緣由就是它對 Java 版本的最低要求是 8。html

下面介紹一下 Spring 5 主要有哪些新的特性,若是你已經在使用 Java 8 和 Spring 4.x,那麼應該儘快跟上來。java

Spring 5.0 基於 Java 8

這麼說的意思是,Spring 的源代碼已是以 Java 8 的語法來從新寫過了!這但是至關大的變動,能夠說是核心層面的重寫。你能夠在 Spring 的源碼中看到不少:spring

圖片描述

這樣相比 Spring 4.x 更能充分利用 Java 8 的潛力。數據庫

日誌記錄

Spring 5.0 使用本身的 spring-jcl模塊來記錄日誌,這個模塊會自動識別並使用現有的日誌框架。編程

Bean 掃描

當項目很是大的時候,Spring 的掃描過程會致使很長的啓動時間。在這個版本開始,你可使用 META-INF/spring.components 文件來直接指定要註冊哪些類。這種方式對於小的項目(好比說少於 200 個 bean)來講可能改善不是很明顯,但對大項目來講幫助很是大。併發

反應式編程模型

Spring 5.0 新增了一個名爲 Spring WebFlux 的反應式(Reactive)模型,與現有的 Spring MVC 並存,而它的併發承載能力能夠說是高了數倍不止。注意 Spring WebFlux 和 Servlet 是不兼容的。框架

反應式編程模型屬於比較新的東西,隨着時間推移,Spring 的其餘項目(如 Spring Data、Spring Security、Spring Integration 等)也會陸續加入對反應式編程模型的支持。dom

可是在數據庫操做方面,反應式編程模型還不夠成熟,由於 JDBC 規格自己仍然是阻塞式的。單元測試

單元測試

由於 JUnit 5 已經適配 Java 8,因此 Spring 5 也對 JUnit 5 作出了相應的適配,對測試進行啓用和禁用更加方便,併發測試也更容易。測試

依賴庫

Spring 5.0 的一些依賴關係也作了更新:

  • Jackson 2.6+

  • EhCache 2.10+ / 3.0 GA

  • Hibernate 5.0+

  • JDBC 4.0+

  • XmlUnit 2.x+

  • OkHttp 3.x+

  • Netty 4.1+


參考:

相關文章
相關標籤/搜索