前言
Spring 使创建 Java 企业应用程序变得容易,因为它包含了 Java 企业应用所需的一切,支持 Groovy 和 Kotlin 作为 JVM 上的替代语言,并且具有根据应用程序的需要创建多种架构的灵活性。
历史
Spring 出现于 2003 年,是对早期 J2EE 规范的复杂性的响应。虽然有些人认为 Java EE 和 Spring 是竞争对手,但实际上 Spring 是 Java EE 的补充。Spring 编程模型并不包含 Java EE 平台规范,但它集成了 EE 平台精挑细选的个别规范:
- Concurrency Utilities (JSR 236)
- Common Annotations (JSR 250)
- Bean Validation(JSR 303)
- Dependency Injection (JSR 330)
- JPA(JSR 338)
- Servlet API (JSR 340)
- WebSocket API (JSR 356)
- JSON Binding API(JSR 367)
- JMS (JSR 914)
以及事务协调的JTA/JCA设置(如果必要的话)。
设计原则
在学习框架时,不仅要了解它的功能,还要了解它遵循的原则。以下是 Spring 框架的指导原则:
- 在每个级别提供选择。Spring 允许您尽可能晚地推迟设计决策。例如,您可以通过配置切换持久性提供程序,而无需更改代码。对于许多其他基础设施问题以及与第三方 api 的集成,也是如此。
- 容纳不同的观点。Spring 拥抱灵活性,对事情应该怎么做并不固执己见。它以不同的视角支持广泛的应用程序需求。
- 保持强大的向后兼容性。Spring 的发展已经被谨慎地管理,使得版本之间很少有突破性的变化。Spring 支持一系列精心选择的 JDK 版本和第三方库,以促进依赖于 Spring 的应用程序和库的维护。
- 关注 API 设计。Spring 团队花费了大量的精力和时间,使 API 更直观,并且能够跨越许多版本和许多年。
- 为代码质量设定高标准。Spring 框架非常强调有意义的、当前的和准确的 javadoc。它是少数几个能够宣称代码结构整洁、包之间没有循环依赖关系的项目之一。
资源
Spring Framework Overview
Java® EE 概览
Jakarta EE
Java EE 规范重命名为 Jakarta EE