spring 5 新特性

Posted 架构师日常笔记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring 5 新特性相关的知识,希望对你有一定的参考价值。

总体来说,spring 5.0的特性可以分为以下几类:

  • JDK 基线更新.支持jdk8,jdk9

  • 核心框架的修订.

    由于jdk8反射的增强,spring 5支持有效获取Method的参数

    支持@Nullable 和@NotNull注解

    提供了基于Java 8默认方法构建的选择性声明

  • 核心容器更新.

    支持候选组件索引,可以替代类路径扫描。该支持已被添加到类路径扫描器的候选组件标识步骤的快捷方式中。

    GenericApplicationContext和AnnotationConfigApplicationContext中实现函数式编程风格。

    对接口方法上的事务、缓存和异步注释的一致检测。

    XML配置名称空间简化为无版本模式。

  • 使用Kotlin进行函数式编程.

    引入了对JetBrains Kotlin语言的支持。

  • 反应式编程模型。

Spring Framework 5.0有一个新的Spring -webflux模块,它支持响应式HTTP和WebSocket客户端。Spring Framework 5.0还提供了对服务器上运行的反应性web应用程序的支持,这些服务器包括REST、html和websocket样式的交互。在spring-webflux中,服务器端有两种截然不同的编程模型:
基于注解的@Controller和Spring MVC的其他注解。 
  使用Java 8 lambda进行函数式路由和处理。
  • 测试改进

完全支持JUnit 5 Jupiter来在JUnit 5中编写测试和扩展。除了提供编程和扩展模型外,Jupiter子项目还提供了一个测试引擎,用于在Spring上运行基于Jupiter的测试。另外,Spring Framework 5在Spring TestContext框架中提供了对并行测试执行的支持。 对响应式编程模型,Spring test现在包含了WebTestClient,用于集成对Spring WebFlux的测试支持。与MockMvc类似,新的WebTestClient不需要运行的服务器。使用模拟请求和响应,WebTestClient可以直接绑定到WebFlux服务器基础设施。

  • 支持的新库.

    Jackson 2.6+

    EhCache 2.10+ / 3.0 GA

    Hibernate 5.0+

    JDBC 4.0+

    XmlUnit 2.x+

    OkHttp 3.x+

    Netty 4.1+

  • 不支持的库或者包

    不支持的库

              Portlet.

              Velocity.

              JasperReports.

              XMLBeans.

              JDO.

              Guava.

     不支持的包

           beans.factory.access 

           jdbc.support.nativejdbc 

          spring-aspects模块中的mock.staticmock.

          web.view.tiles2M. 现在Tiles 3 是最低支持版本.

        orm.hibernate3和orm.hibernate4. 现在, spring框架支持Hibernate5 


以上是关于spring 5 新特性的主要内容,如果未能解决你的问题,请参考以下文章

Spring 5 新特性:函数式Web框架

Spring Boot 3.0正式发布及新特性解读

Atitit spring 3.0 3.1 3.2 4.0 4.3 5.0 新特性

Spring5框架 笔记总结

Spring3.1新特性介绍

Spring3.1新特性(转)