★学习目标:
1、熟悉Spring框架的下载及目录结构
★思考任务:
1、Spring的目录结构?
★任务学习:
★知识要点:
6.1.4 Spring 5的新特性
Spring 5与其他版本的比较
Spring 5是Spring当前最新的版本,与历史版本对比,Spring 5对Spring核心框架进行了修订和更新,增加了很多新特性,如支持响应式编程等。
Spring 5新特性:a.更新JDK基线
因为Spring 5代码库运行于JDK 8之上,所以Spring 5对JDK的最低要求是JDK 8,这可以促进Spring的使用者积极运用Java 8新特性。
Spring 5新特性:b.修订核心框架
(1)基于JDK 8的反射增强,通过Spring 5提供的方法可以更加高效的对类或类的参数进行访问。
(2)核心的Spring接口提供了基于JDK 8的默认方法构建的选择性声明。
(3)用@Nullable和@NotNull注解来表明可为空的参数以及返回值,可以在编译时处理空值而不是在运行时抛出NullPointerExceptions异常。
Spring 5新特性:c.更新核心容器
Spring 5支持候选组件索引作为类路径扫描的替代方案。从索引读取实体类,会使加载组件索引开销更低,因此,Spring程序的启动时间将会缩减。
Spring 5新特性:d.支持响应式编程
响应式编程是另外一种编程风格,它专注于构建对事件做出响应的应用程序。Spring 5包含响应流和Reactor(ReactiveStream的Java实现),响应流和Reactor支撑了Spring自身的功能及相关API。
Spring 5新特性:e.支持函数式Web框架
Spring 5提供了一个函数式Web框架。该框架使用函数式编程风格来定义端点,它引入了两个基本组件: HandlerFunction和RouterFunction。HandlerFunction 表示处理接收到的请求并生成响应函数;RouterFunction替代了@RequestMapping注解,用于将接收到的请求转发到处理函数。
Spring 5新特性:f.支持Kotlin
Spring 5提供了对Kotlin语言的支持。Kotlin是一种支持函数式编程风格的面向对象语言,它运行在JVM之上,可以让代码更具有表现力、简洁性和可读性。有了对Kotlin的支持,开发人员可以进行深度的函数式Spring编程,这拓宽了Spring的应用领域。
Spring 5新特性:g.提升测试功能
Spring 5完全支持Junit 5 Jupiter,因此可以使用Junit 5编写测试代码。除此之外,Spring 5还提供了在Spring TestContext Framework中进行并行测试的扩展。针对响应式编程模型,Spring 5引入了支持Spring webFlux的WebTestClient集成测试。

