【大咖分享】AI 大模型时代,架构师有哪些机遇和挑战? 了解详情
写点什么

Spring 框架 4.0 GA 版本发布

  • 2013-12-17
  • 本文字数:1861 字

    阅读完需:约 6 分钟

本月 12 日,SpringSourceCTO Adrian Colyer 在博客中宣布Spring 框架4.0 GA 版本正式发布。这个版本支持了众多Java 8 的新特性,新增了对WebSocket、STOMP 等技术的支持,并增强了测试、Web 开发的便利性,另外,在这个版本中还删除了废弃的方法和类。

近十年来,Spring 框架成为企业级Java 开发中占据主导地位的编程模型,该框架最早发布于2004 年,其后发布了几个重大的版本更新:在Spring 2.0 中提供对XML 命名空间和AspectJ 的支持;Spring 2.5 中新增了注解驱动的配置;在Spring 3.0 版本中引入了很强大的使用Java 5+ 的基础功能以及基于Java 的@Configuration 模型。

Spring 4.0 是最新的主版本,这个版本中包含了大量的新特性以应对 Java 语言和 Java EE 规范的发展。Spring 4.0 是首个完全支持 Java 8 特性的框架,这个版本对环境的最低要求是 Java SE 6。Spring 4.0 连同其他的 Spring 项目,将会应对并带动下一个十年 JVM 的新趋势,包括开发人员生产率(Developer Productivity)、大数据、云、REST 以及微服务架构(Micro Service Architecture)。

Spring 框架 4.0 的整体架构如下图所示:

Spring 4.0 的新特性包括:

对 Java 8 诸多特性的支持。现在开发者可以在 Spring 的回调接口中使用 lambda 表达式以及方法引用(method reference),对 java.time(JSR-310)提供了很好的支持,一些注解也被更新为 @Repeatable。尽管 Spring 4.0 还支持 Java SE6,但是官方还是建议在使用 Spring 4 的新项目中,使用 Java 7 或 8。

对 Java EE 6 和 7 的支持。Spring 在 JCP 中协助定义相关的规范,框架中对这些规范提供了很好的支持。Spring 框架的 4.0 版本考虑到了 JavaEE6 以及更高的版本规范,尤其是 JPA 2.0 和 Servlet 3.0 规范。为了更具技术前瞻性,Spring 框架 4.0 还支持 Java EE 7 中已可用的规范,包括 JMS 2.0、JTA 1.2、JPA 2.1、Bean Validation 1.1 以及 JSR-236 Concurrency Utilities。另外,对其他开源库的支持也提升到了最新版本,如 Hibernate、Quartz、EhCache 等。

对 WebSocket、SockJS 以及 STOMP 的支持。Spring 4.0 提供了一个名为 spring-websocket 的新模块,以支持基于 WebSocket 的、客户端 - 服务器的双向通信,它与 JSR-356 Java WebSocket API 兼容。另外,还提供了基于 SockJS (对 WebSocket 的模拟)的回调方案,以适应不支持 WebSocket 协议的浏览器。新增的 spring-messaging 模块提供了对 STOMP 的支持,以及用于路由和处理来自 WebSocket 客户端的 STOMP 消息的注解编程模型。spring-messaging 模块中还包含了 Spring Integration 项目中的核心抽象类,如 Message、MessageChannel、MessageHandler。

对动态语言 Groovy 的支持。应用可以部分或完全使用 Groovy 编写。借助于 Spring 4.0,能够使用 Groovy DSL 定义外部的 Bean 配置,这类似于 XML Bean 声明,但是语法更为简洁。使用 Groovy 还能够在启动代码中直接嵌入 Bean 的声明。

简化 Spring 的学习过程。 Spring.io 网站上提供了全新的“Getting Started”指导和样例帮助你学习Spring 技术。基于Spring 框架4.0 构建的 Spring Boot 项目也可以极大地简化应用开发中相关配置的复杂性。

对未来新架构的考量。Adrian Colyer 的博客还着重提到了新的应用架构。像Amazon、Google、Facebook 这样的行业的领导者,目前正在抛弃庞大的Java 架构,而是更加倾向于微服务架构(MSA,更多资料可以参见该文章)以及REST。James Lewis 曾经在QCon 上发表过一个演讲来阐述MSA 的特征。针对这种趋势,Spring 4.0 中做了充分考虑,在Spring 框架中REST 是一等公民,在其他组件如Spring Boot、Spring HATEOAS、Spring Security、Spring Social、Spring Data 均是如此。借助于Spring 框架4.0,开发人员可以使用非阻塞的AsyncRestTemplate 以及Java 语言中的Futures 等特性,构建出更加具有交互性、事件驱动的REST 服务。Spring 对HTML5/WebSocket RFC 6455/JSR-356 的支持均有助于创建事件驱动的应用程序。

Spring 框架 4.0 删除了所有废弃的方法和类。如果你想从一个之前的版本中升级到 4.0 的话,需要将所有对废弃方法和类的引用进行更新。升级到 4.0 迁移文档可以在 Spring 框架 GitHub Wiki 中的该页面查看,完整的用户指导文档,可以查看该页面

除了核心框架以外,近年来,Spring 中新增了许多新的项目以应对新的技术趋势和应用潮流,如 Spring Boot Spring XD Spring HATEOAS Spring Integration Spring Batch Spring Social Spring Data 等,您可以通过项目列表页面了解 Spring 各项目的最新进展。

2013-12-17 07:277066

评论

发布
暂无评论
发现更多内容

8张图带你全面了解kafka的核心机制

做梦都在改BUG

Java kafka 消息队列 消息中间件

华为与阿里等五位架构师一起奋战七个月,写出这一份Java并发编程

做梦都在改BUG

Java 并发编程 多线程 并发实现

2023年辽宁省等级保护测评机构名单公布

行云管家

等保 等级保护 辽宁

全球护照NFC核验 | 羽山科技

羽山数据

nfc 护照 全球护照

关于接口可维护性的一些建议 | 京东云技术团队

京东科技开发者

京东云 接口设计 企业号 5 月 PK 榜

OpenMLDB v0.8.0 发布

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

Planner 5D:设计您的梦想家园

魔仙苹果mac堡

Planner 5D for Mac 苹果mac软件下载 室内设计工具 Planner 5D中文

技术驱动,数据赋能,华为云GaussDB给世界一个更优选择

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

华为首席架构师推荐的《云原生架构下微服务最佳》

做梦都在改BUG

Java 架构 微服务 云原生

阿里P8级架构师十年心血终成Java核心精讲与网络协议文档;

做梦都在改BUG

Java java面试 Java八股文 Java面试题 Java面试八股文

Git 代码分支管理 | 京东云技术团队

京东科技开发者

git 京东云 企业号 5 月 PK 榜

美团二面:聊聊ConcurrentHashMap的存储流程

做梦都在改BUG

Java hashmap ConcurrentHashMap

GPT大语言模型Alpaca-lora本地化部署实践【大语言模型实践一】 | 京东云技术团队

京东科技开发者

gpu 京东云 ChatGPT 企业号 5 月 PK 榜

8张图带你全面了解kafka的核心机制

JAVA旭阳

Java kafka

众筹互助软件架构搭建原理

Congge420

AntDB亮相DDIS 2023数字驱动创新峰会,共推数字经济创新力量

亚信AntDB数据库

AntDB AntDB数据库 企业号 5 月 PK 榜

索信达助力,贵阳银行荣获“金融行业数字化转型最佳创新应用奖”

索信达控股

数字化转型 金融 银行

如果你项目使用了MyBatis-Plus你一定要用它

Java你猿哥

Java mybatis ssm Mybatis Plus

Java中的正则表达式详解

timerring

Java

百度Q1财报发布:文心一言性能提升10倍,大语言模型带来革命性潜力

飞桨PaddlePaddle

飞桨

京东顶级架构师是如何应对几天后618狂欢节的,带你走进顶级大佬

做梦都在改BUG

Java 架构 系统设计 高并发 亿级流量

未来源码|Dart 3正式发布:100%健全的空值安全、迄今为止最大版本

MobTech袤博科技

Python从0到1丨带你了解图像直方图理论知识和绘制实现

华为云开发者联盟

Python 人工智能 华为云 华为云开发者联盟 企业号 5 月 PK 榜

楠姐技术漫话:图计算的那些事 | 京东云技术团队

京东科技开发者

京东云 图计算 企业号 5 月 PK 榜

高效研发团队都在看!一套方法论带你找到适合自己的效能提升路径

万事ONES

免费堡垒机有哪些?功能多吗?后续可以升级吗?

行云管家

安全运维 免费软件 免费 免费堡垒机

ChatGPT人功智能开发方案详情

Congge420

魔改xxl-job,彻底告别手动配置任务!

Java你猿哥

Java 分布式 定时任务 ssm Job

第二届全国博士后创新创业大赛报名开始啦!海内外博士、博士后

科兴未来News

博士后 双创比赛 博士

flutter系列之:使用AnimationController来控制动画效果

程序那些事

flutter 大前端 程序那些事

IDD Swap算力LP挖矿部署流程(详细

Congge420

  • 扫码加入 InfoQ 开发者交流群
Spring框架4.0 GA版本发布_Java_张卫滨_InfoQ精选文章