Spring5新功能

Spring框架的新功能

这一章主要提供Spring框架新的功能和变更

升级到新版本的框架可以参考.https://github.com/spring-projects/spring-framework/wiki/Migrating-from-earlier-versions-of-the-Spring-Framework。

内容列表

Spring 5.x框架新的功能

Spring 4.x框架新的功能

Spring 3.x框架新的功能

Spring FrameWork 5.0新的功能

JDK 8+和Java EE7+以上版本

  • 整个框架的代码基于java8源代码水平
  • 通过使用泛型等特性提高可读性
  • 对java8提高直接的代码支撑
  • 运行时兼容jdk9
  • Java EE 7API需要Spring相关的模块支持
  • 运行时兼容Java EE8 API
  • 取消的包,类和方法
  • 包 beans.factory.access
  • 包 dbc.support.nativejdbc
  • 从spring-aspects 模块移除了包mock.staicmock,不在提AnnotationDrivenStaticEntityMockingControl支持
  • 许多不建议使用的类和方法在代码库中删除

核心特性

JDK8的增强:

  • 访问Resuouce时提供getFile或和isFile防御式抽象
  • 有效的方法参数访问基于java 8反射增强
  • 在Spring核心接口中增加了声明default方法的支持一贯使用JDK7 Charset和StandardCharsets的增强
  • 兼容JDK9
  • Spring 5.0框架自带了通用的日志封装
  • 持续实例化via构造函数(修改了异常处理)
  • Spring 5.0框架自带了通用的日志封装
  • spring-jcl替代了通用的日志,仍然支持可重写
  • 自动检测log4j 2.x, SLF4J, JUL(java.util.Logging)而不是其他的支持
  • 访问Resuouce时提供getFile或和isFile防御式抽象
  • 基于NIO的readableChannel也提供了这个新特性

核心容器

  • 支持候选组件索引(也可以支持环境变量扫描)
  • 支持@Nullable注解
  • 函数式风格GenericApplicationContext/AnnotationConfigApplicationContext
  • 基本支持bean API注册
  • 在接口层面使用CGLIB动态代理的时候,提供事物,缓存,异步注解检测
  • XML配置作用域流式
  • Spring WebMVC
  • 全部的Servlet 3.1 签名支持在Spring-provied Filter实现
  • 在Spring MVC Controller方法里支持Servlet4.0 PushBuilder参数
  • 多个不可变对象的数据绑定(Kotlin/Lombok/@ConstructorPorties)
  • 支持jackson2.9
  • 支持JSON绑定API
  • 支持protobuf3
  • 支持Reactor3.1 Flux和Mono

SpringWebFlux

  • 新的spring-webflux模块,一个基于reactive的spring-webmvc,完全的异步非阻塞,旨在使用enent-loop执行模型和传统的线程池模型。
  • Reactive说明在spring-core比如编码和解码
  • spring-core相关的基础设施,比如Encode 和Decoder可以用来编码和解码数据流;DataBuffer 可以使用java ByteBuffer或者Netty ByteBuf;ReactiveAdapterRegistry可以对相关的库提供传输层支持。
  • 在spring-web包里包含HttpMessageReade和HttpMessageWrite

测试方面的改进

  • 完成了对JUnit 5’s Juptier编程和拓展模块在Spring TestContext框架
  • SpringExtension:是JUnit多个可拓展API的一个实现,提供了对现存Spring TestContext Framework的支持,使用@ExtendWith(SpringExtension.class)注解引用。
  • @SpringJunitConfig:一个复合注解
  • @ExtendWith(SpringExtension.class) 来源于Junit Jupit
  • @ContextConfiguration 来源于Srping TestContext框架
  • @DisabledIf 如果提供的该属性值为true的表达或占位符,信号:注解的测试类或测试方法被禁用
  • 在Spring TestContext框架中支持并行测试
  • 具体细节查看Test 章节 通过SpringRunner在Sring TestContext框架中支持TestNG, Junit5,新的执行之前和之后测试回调。
  • 在testexecutionlistener API和testcontextmanager新beforetestexecution()和aftertestexecution()回调。MockHttpServletRequest新增了getContentAsByteArray()和getContentAsString()方法来访问请求体
  • 如果字符编码被设置为mock请求,在print()和log()方法中可以打印Spring MVC Test的redirectedUrl()和forwardedUrl()方法支持带变量表达式URL模板。
  • XMLUnit 升级到了2.3版本。

转载自 并发编程网 - ifeve.com 

时间: 2024-12-11 17:14:03

Spring5新功能的相关文章

8张图看懂office2016的10项新功能

  日前,微软推出了最新版本的办公软件:office2016,那么,office2016与之前的版本相比,有什么不同呢?尤其是目前来自金山wps这款办公软件同行的竞争压力,如果office2016没有几样黑科技,恐怕很难留住微软用户的心.下面,还是一起来看看office2016带来的10项新功能吧! 推荐教程:office2016怎么激活?office2016激活密钥与激活教程 office2016 1.增加智能搜索框 你会注意到在 PowerPoint 2016 功能区上有一个搜索框[告诉我您

IE9新增了那些功能?IE9新功能介绍

IE9新功能介绍 简洁的设计 打开 Internet Explorer 9 时首先注意到的是紧凑的用户界面.大多数命令栏功能,如"打印"或"缩放",现在都可以通过单击"工具"按钮访问,单击"收藏夹"按钮时会显示您的收藏夹.此外,Internet Explorer 还为您提供了需要的基本控制,并让网页显示在正中.(如果要还原"命令"栏."收藏夹"栏和状态栏,请右键单击"新建选项卡

PHOTOSHOP CC 2014新功能详解

  Adobe在6月18日发布了产品线2014年的重大更新,今天@PS梦工场 带领大家一起领略一下Photoshop CC 2014版的新增功能. Adobe Photoshop CC 2014 附带数种新功能和增强,可极大地丰富您的数字图像处理体验.继续阅读对新增功能的快速介绍以及提供详细信息的资源链接. 智能参考线 Photoshop CC 2014 引入了许多有用的智能参考线增强功能: 按住 Option(Mac)/Alt(Win)键并拖动图层: 如果在按住 Option(Mac)或 Al

Photoshop CS6 新功能-AdaptiveWideAngle修正球面变型

当梅干看到Photoshop CS6,新增Adaptive Wide Angle这项新功能时,不禁让梅干感到兴奋,若有在观注梅问题的朋友,应该有发现到,梅干先前曾分享过Nikon Nikon 24-120mm F4.0这只镜头,而这只镜头什么都好,就是变形让人感到比较困扰,虽然说拍完后,回家可透过Nikon Capture来进行修正,但梅干实在不是很爱Nikon Capture,一来吃效能.二来界面控制有些难用,所以现在Photoshop CS6有这项新功能后,就可以全在PS中完成,不用再透过N

Photoshop CS6新功能-倾斜位移(移轴)营造出小人国影像

关於此次Photoshop CS6所新增的新功能,而今天要来介绍什么呢?其实这一个功能,相信有iPhone/iPad的朋友,应该不感陌生,那就是移轴模糊, 透过移轴模糊,便可营造出小人国般的趣味影像,没想到这功能,现在Photoshop CS6也有了,其用法与iOS操作上差不多,唯一较不同的是,在Photoshop CS6与先前分享的浅景深一样,可製作多点移轴模糊效果,而这个模糊效果,在Photoshop CS6称为倾斜位移,翻的还真是一诀,让人看了傻傻分不清楚是 作啥用的,现在就一块来看看,这

Photoshop CC 14.0新功能与安装教程

享有更多的自由.速度和功能,让令人惊叹的影像栩栩如生.您可取用数十种的新增和重新研发的功能,包括市面上最先进的锐利化工具.直接从 Photoshop CC 将作品分享至 Behance,以获得回馈并展示您自己的项目.每当新功能一发布,就能立即取用.完整的创意挥洒空间,一个应用程序就满足您的所有需求.一切尽在 Creative Cloud. Photoshop CC 提供了众多新增功能.您可使用全新的智能型锐利化 工具使细节更为鲜明,还可将低分辨率的相片转化为高分辨率的大型影像,更可取得所有先进的

IE9下CSS3多种新功能尝鲜

无意中看到CSS3的强大功能,比较感兴趣,分享下先...呵呵 首先你得安装IE9,,,, 如果你没安装IE9 beata,来这里试试... http://windows.microsoft.com/en-US/internet-explorer/download/ie-9/worldwide 选择语言和版本, 或者是FireFox3.1版本以上,Opera9.5版本以上.(我只是在IE9下面测试). 1. border-radius属性: 很好看的形状不再需要image来实现啦..我们看看如何让

HTML 5之表单新功能解析

时光车轮滚滚碾来,前端之路永无止歇.对于这个前端这门精一多专的技术,任何一次技术革新,我们都必须第一时间去了解它学习它,比如Web世界里这簇美艳的花朵---HTML 5.虽然HTML 5发布之初,许多人(包括我)都觉得普及它还很遥远,但自发布以来,许多企业级网站对它的尝试应用(比如<!doctype html>应用,比如canvas的应用),使HTML 5的迈出了一大步,随之而来IE9的发布,无疑又让我们看到了HTML 5离我们不再遥远. 51CTO推荐专题:HTML 5 下一代Web开发标准

教程/dreamweaver/提高 DW MX 2004新功能:浏览器检测

dreamweaver|教程|浏览器 今天我们来一起看看Dreamweaver MX 2004在动态浏览器检测方面的新功能. Dreamweaver MX 2004版本中,新增了多浏览器检测页面运行错误的功能.我们设计的页面,在某一种浏览器效果下可能正常运行,在其它浏览器中可能会报错,有时候连文字链接.版式都不统一了.为了避免这样的情况发生,2004 版本增加了支持多款浏览器检测功能. 我们可以在 Dreamwaver 编辑界面的导航栏上看到新增的" No Browser check Error