资讯专栏INFORMATION COLUMN

Spring 5 有哪些新特性

guyan0319 / 3372人阅读

摘要:自从年月发布以来,又该到了出一个新的大版本的时候了。下面介绍一下主要有哪些新的特性,如果你已经在使用和,那么应该尽快跟上来。在这个版本开始,你可以使用文件来直接指定要注册哪些类。依赖库的一些依赖关系也做了更新参考中的新特性

自从 2013 年 12 月 Spring 4.0 发布以来,Spring 又该到了出一个新的大版本的时候了。实际上到现在 Spring 的最新版本已经是 5.0.1,但用起来的人仍然不是很多。一个主要的原因就是它对 Java 版本的最低要求是 8。

下面介绍一下 Spring 5 主要有哪些新的特性,如果你已经在使用 Java 8 和 Spring 4.x,那么应该尽快跟上来。

Spring 5.0 基于 Java 8

这么说的意思是,Spring 的源代码已经是以 Java 8 的语法来重新写过了!这可是相当大的变更,可以说是核心层面的重写。你可以在 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 等)也会陆续加入对反应式编程模型的支持。

但是在数据库操作方面,反应式编程模型还不够成熟,因为 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+

参考:

What"s New in Spring Framework 5?

Spring Framework 5 中的新特性

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/68015.html

相关文章

  • Java开发 大厂面试整理

    摘要:用户态不能干扰内核态所以指令就有两种特权指令和非特权指令不同的状态对应不同的指令。非特权指令所有程序均可直接使用。用户态常态目态执行非特权指令。 这是我今年从三月份开始,主要的大厂面试经过,有些企业面试的还没来得及整理,可能有些没有带答案就发出来了,还请各位先思考如果是你怎么回答面试官?这篇文章会持续更新,请各位持续关注,希望对你有所帮助! 面试清单 平安产险 飞猪 上汽大通 浩鲸科...

    Scorpion 评论0 收藏0
  • 吐血整理 20 道 Spring Boot 面试题,我经常拿来面试别人!

    摘要:你如何理解中的可以理解为启动器,它包含了一系列可以集成到应用里面的依赖包,你可以一站式集成及其他技术,而不需要到处找示例代码和依赖包。如你想使用访问数据库,只要加入启动器依赖就能使用了。 面试了一些人,简历上都说自己熟悉 Spring Boot, 或者说正在学习 Spring Boot,一问他们时,都只停留在简单的使用阶段,很多东西都不清楚,也让我对面试者大失所望。 下面,我给大家总结...

    haoguo 评论0 收藏0
  • Java 进阶面试问题列表

    摘要:进阶面试问题列表翻译自,从属于笔者的入门与工程实践系列。只是单纯的问题列表,可能较水,慎进。面向对象编程的基本理念与核心设计思想解释下多态性,封装性,内聚以及耦合。新版的中有哪些新特性介绍下的优势与缺陷。 Java 进阶面试问题列表翻译自Java developer interview questions: The hard part,从属于笔者的Java入门与工程实践系列。最近公司打...

    张巨伟 评论0 收藏0
  • 假如我是面试官,我会这样虐你

    摘要:又是金三银四的时候,我希望这份面试题能够祝你一臂之力自我和项目相关自我介绍你觉得自己的优点是你觉得自己有啥缺点你有哪些你为什么要离开上家公司你上家公司在,我们公司在,离这么远为什么要选择我们这里上家公司的同事和领导是怎么评价你的介绍下你的上 又是金三银四的时候,我希望这份面试题能够祝你一臂之力! 自我和项目相关 1、自我介绍 2、你觉得自己的优点是?你觉得自己有啥缺点? 3、你有哪些 ...

    Benedict Evans 评论0 收藏0
  • Java学习路线总结,搬砖工逆袭Java架构师(全网最强)

    摘要:哪吒社区技能树打卡打卡贴函数式接口简介领域优质创作者哪吒公众号作者架构师奋斗者扫描主页左侧二维码,加入群聊,一起学习一起进步欢迎点赞收藏留言前情提要无意间听到领导们的谈话,现在公司的现状是码农太多,但能独立带队的人太少,简而言之,不缺干 ? 哪吒社区Java技能树打卡 【打卡贴 day2...

    Scorpion 评论0 收藏0

发表评论

0条评论

guyan0319

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<