前言
Spring當前的版本已經到了5.1.9,本文主要介紹Spring 5中的新特性。
運行環境
Spring 5.0正常運行時,需要以下環境:
- JDK 8或以上版本
- 支持JDK 9
- 相關特性需要Java EE 7 API
- 支持Servlet3.1、Bean Validation 1.1、JPA 2.1 、JMS 2.0 、Tomcat 8.5+、Jetty 9.4+、WildFly 10+
- 兼容Java EE 8
- 兼容Servlet4.0、Bean Validation 2.0、JPA 2.2 、JSON Binding API 1.0 、Tomcat 9.0、Hibernate Validator 6.0、Apache Johnzon 1.1
核心修改
Spring 5.0核心修改如下:
- 基於Java 8 反射增強的實現高效的方法參數訪問
- 選擇性地對Spring核心接口使用Java 8 默認方法的聲明
- 儘可能避免使用JDK 9 廢棄的API
- 通過構造函數實現一致的實例化(修改後的異常處理)
- 對核心JDK類的反射防禦性使用
- 使用“Nullable”明確註解可以爲空的參數、字段和返回值
- 訪問資源@Resource類提供getFile 和isFile 防禦式抽象
- Resource接口中提供基於NIO的readableChannel的訪問器
- 通過NIO 2.0流進行文件系統訪問
- 自帶了通用的日誌組件
- 無需任何橋接可自動檢測Log4j、SLF4J、JUL
- 附帶ASM 6.0
- 引入了對Kotlin的支持