内容简介:北京时间7月14日,Spring Framework推出 5.3.9 和 5.2.16 两个新版本。Spring Framework5.3.9包括45 个修复和改进。Spring Framework5.2.16包括12 个选定的修复和改进。 随着越来越多的人使用Spring Boot 逐渐忽略...
北京时间7月14日,Spring Framework推出 5.3.9
和 5.2.16
两个新版本。Spring Framework5.3.9
包括45 个修复和改进。Spring Framework5.2.16
包括12 个选定的修复和改进。
随着越来越多的人使用Spring Boot 逐渐忽略了Spring Framework的关注,其实两者的关系密不可分,对Spring Boot 如果想要能研究得更深入,那么,就需要对Spring Framework有更足够的了解和应用。
一、介绍Spring Framework
Spring 使创建 Java 企业应用程序变得容易。它提供了在企业环境中使用 Java 语言所需的一切,支持 Groovy 和 Kotlin 作为 JVM 上的替代语言,并且可以根据应用程序的需要灵活地创建多种架构。从 Spring Framework 5.1 开始,Spring 需要 JDK 8+(Java SE 8+)并为 JDK 11 LTS 提供开箱即用的支持。建议将 Java SE 8 update 60 作为 Java 8 的最低补丁版本,但通常建议使用最新的补丁版本。
Spring 支持广泛的应用场景。在大型企业中,应用程序往往存在很长时间,并且必须运行在升级周期不受开发人员控制的JDK和应用程序服务器上。其他可能作为嵌入服务器的单个 jar 运行,可能在云环境中。还有一些可能是不需要服务器的独立应用程序(例如批处理或集成工作负载)。
Spring 是开源的。它拥有一个庞大而活跃的社区,可根据各种实际用例提供持续的反馈。这帮助 Spring 在很长一段时间内成功发展。
二、Spring Framework 与Spring Boot的版本对应关系
Spring boot 版本 | Spring Framework | jdk 版本 | maven 版本 |
---|---|---|---|
1.5.0.RELEASE | 4.3.6.RELEASE | 7 | 3.2+ |
1.5.2.RELEASE | 4.3.7.RELEASE | 7 | 3.2+ |
1.5.3.RELEASE | 4.3.8.RELEASE | 7 | 3.2+ |
1.5.4.RELEASE | 4.3.9.RELEASE | 7 | 3.2+ |
1.5.5.RELEASE | 4.3.10.RELEASE | 7 | 3.2+ |
1.5.7.RELEASE | 4.3.11.RELEASE | 7 | 3.2+ |
1.5.8.RELEASE | 4.3.12.RELEASE | 7 | 3.2+ |
1.5.9.RELEASE | 4.3.13.RELEASE | 7 | 3.2+ |
2.0.0.RELEASE | 5.0.2.RELEASE | 8 | 3.2+ |
2.1.*.RELEASE | 5.1.*.RELEASE | 8 | 3.2+ |
2.2.*.RELEASE | 5.2.*.RELEASE | 8 | 3.3+ |
2.3.*.RELEASE | 5.2.*.RELEASE | 8+ | 3.3+ |
2.4.* | 5.3.* | 8+ | 3.3+ |
2.5.* | 5.3.* | 8+ | 3.3+ |
2.6.* | 5.3.* | 8+ | 3.3+ |
三、主要更新内容
5.3.9
3.1 新的功能
- 配置 CommonsMultipartResolver 以支持特定的 HTTP 方法#27161
- 允许 BeanDefinitionBuilder 使用ResolvableType设置实例供应商#27160
@ResponseStatus
MessageSource 未解决 on handler 方法的原因#27156- ResourceHandlerRegistry#getHandlerMapping 应该在外循环中初始化一次处理程序#27153
- 使用 BeanDefinitionBuilder 设置合成标志#27141
- BeanCreationException 错误消息应始终包括声明构造函数(或工厂方法)类#27139
- 改进 Jetty 10 检查 JettyClientHttpResponse #27136
- Jetty10RequestUpgradeStrategy 使用旧的码头 9 类 HandshakeRFC6455 #27121
- 使用 Jetty 10 及其反应式客户端的 ClassNotFoundException #27112
- 尽可能使用 StringBuilder.append(char) #27098
- 考虑“wss”和“https”作为转发标头检查中的安全标志#27097
- SynchronossPartHttpMessageReader 应仅在需要时创建临时目录#27092
- 在 BeanMethod 和 *Metadata 类型中实现 equals、hashCode 和 toString #27076
- 删除 BeanUtils 中的日志依赖#27070
- 从自动代理中排除密封接口(为了兼容 JDK 17)#27027
- 使用 TransactionOperator 运行事务时出现 Blockhound 错误#26955
- 配置 StandardServletMultipartResolver 以仅支持 multipart/form-data #26826
- 添加一种从 ThreadPoolTaskScheduler 设置 executeExistingDelayedTasksAfterShutdown 的方法#26719
- 在设置本地值之前在 ThreadPoolTaskExecutor 中应用动态更改#26700
3.2 Bug修复
- JettyHttpHandlerAdapter 不知道 Server[Request|Response]Wrapper #27146
- {*path} 模式 (CaptureTheRestPathElement) 在
@PathVariable
路径#27132 中包含未记录的前导斜杠 - 在 jetty 10 中调用 JettyWebSocketSession.getRemoteAddress 时出现 NoSuchMethodError #27120
- CronExpression在 spring-context-5.3.8 上仍然被破坏#27117
- SimpleMethodMetadataReadingVisitor.Source.toString() 省略了方法参数的分隔符#27095
- DefaultPathSegment 允许改变共享的空参数映射#27064
- 使用 proxyTargetClass=true 的 AOP 自动代理和介绍建议不适用于 JDK 代理目标#27044
- ServletRequestDataBinder 假定标准 servlet 多部分处理#26999
- DataClassRowMapper 不应覆盖 Kotlin 初始化属性#26569
3.3 文档
- 将 Javadoc 添加
@since
到BeanDefinitionBuilder.setSynthetic()
#27155 - 修复指向 Javadoc API 的链接#27151
- 添加了 HandlerInterceptor 的描述#27122
- 修复 core-beans.adoc 中的错字#27113
- 修复 BeanDefinitionDsl.kt 中的错字#27105
- 改进 ContentCachingRequestWrapper 的 getContentAsByteArray 方法的文档#27068
- 修复了参考文档#27067 中内容协商默认设置的解释
@Valid*
在参考手册中记录任何注释都会触发验证#27050- 改进 RequestPartMethodArgumentResolver Javadoc #27043
- 改进 RequestResponseBodyMethodProcessor Javadoc #27042
- 澄清 ResourceBundleMessageSource 中的 baseName 不支持多个位置#27038
- 链接替代文档格式#27015
3.4 依赖升级
- 适配 HtmlUnit 2.51 #27147
- 升级至 ASM 9.2 (for early Java 18 support) #27069
- 升级至 Kotlin 1.5.21 #27110
- 升级至 Kotlin Coroutines 1.5.1 #27157
- 升级至 Mockk 1.11.0 #27109
- 升级至 Reactor 2020.0.9 #27158
四、 应用案例
MateCloud是基于Spring Cloud和Spring Boot的低代码快速开发平台,底层基于Spring Framework.
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 谷歌正式推出 Android 11
- 谷歌正式推出 Android 11
- PDMan 官方推出 Web 版啦
- 微软推出 Windows Server 2019
- Purism 宣布推出 PureOS 应用商店
- Ubuntu MATE 推出树莓派版本
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
在你身边,为你设计
腾讯公司用户研究与体验设计部 / 电子工业出版社 / 2013-1 / 69.00元
设计属于所有人,也意在为所有人使用,这既是设计的价值,也是设计的责任。本书内容包括:设计理念、设计方法、用户研究、体验设计、设计流程和工具,以及团队成长与管理等方面的知识与经验分享。一起来看看 《在你身边,为你设计》 这本书的介绍吧!