Spring
是用于企业Java
应用程序开发的最流行的应用程序开发框架。全球数百万开发人员使用Spring Framework
创建高性能、易于测试和可重用的代码。Spring Framework
是一个开源的 Java 平台。它最初由 Rod Johnson 编写,并于 2003 年 6 月在 Apache 2.0 许可下首次发布。
为什么是 Spring
Spring
在大小和透明度方面都非常轻巧。Spring Framework
的基本版本大小约为 2MB。
Spring Framework
的核心功能可用于开发任何 Java 应用程序,但是还有用于在 Java EE 平台上构建 Web 应用程序的扩展。Spring Framework
旨在通过启用基于 POJO 的编程模型来使 J2EE 开发更易于使用,并促进良好的编程实践。
使用 Spring Framework
的好处
以下是使用 Spring Framework
的几个重要好处的列表:
Spring
使开发人员能够使用 POJO 开发企业级应用程序。仅使用 POJO 的好处在于,您不需要 EJB 容器产品,例如应用程序服务器,但您可以选择仅使用强大的 servlet 容器,例如 Tomcat 或某些商业产品。Spring
以模块化的方式组织。尽管软件包和类的数量很多,但您只需担心您需要的部分并忽略其余部分。Spring
不会重复发明轮子,而是真正利用了一些现有技术,例如多个 ORM 框架、日志框架、JEE、Quartz 和 JDK 定时器以及其他视图技术。- 使用
Spring
编写的应用程序易于测试,因为环境相关的代码移动到了该框架中。此外,通过使用类似 JavaBean 的 POJO,更容易使用依赖注入来注入测试数据。 Spring
的 Web 框架是一个设计良好的 Web MVC 框架,它提供了一个很好的替代方案,可以替代 Struts 或其他过度设计或不受欢迎的 Web 框架。Spring
提供了一种方便的 API,用于将特定于技术的异常(例如由 JDBC、Hibernate 或 JDO 引发的异常)转换为一致的未经检查的异常。- 轻量级 IoC 容器往往非常轻量级,特别是与 EJB 容器相比。这对于在内存和 CPU 资源受限的计算机上开发和部署应用程序非常有益。
Spring
提供了一致的事务管理接口,可缩小到本地事务(例如使用单个数据库)并扩展到全局事务(例如使用 JTA)。
依赖注入(DI)
Spring
最为人所知的技术是依赖注入(DI)的 Inversion of Control(IoC)风格。IoC
是一个通用概念,可以用许多不同的方式表达。依赖注入仅是控制反转的一个具体示例。
在编写复杂的 Java 应用程序时,应用程序类应尽可能独立于其他 Java 类,以增加重用这些类的可能性并在单元测试时独立于其他类进行测试。依赖注入有助于将这些类粘合在一起,同时保持它们的独立性。
依赖注入可以通过向构造函数传递参数或通过后期构造使用 setter 方法来实现。由于依赖注入是 Spring Framework
的核心
面向切面编程(AOP)
Spring
的关键组件之一是面向切面编程(AOP)框架。跨越应用程序多个点的功能称为横切关注点,这些横切关注点在概念上与应用程序的业务逻辑分开。有各种各样的常见优秀例子,包括日志记录、声明性事务、安全性、缓存等。
OOP
中的模块化关键单元是类,而 AOP
中的模块化关键单元是方面。 DI
可帮助您将应用程序对象解耦,而 AOP
可帮助您将横切关注点解耦。
Spring Framework
的 AOP
模块提供了一种面向方面的编程实现,允许您定义方法拦截器和切入点,以清晰地解耦实现应该分开的功能的代码
最后
为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:Let us Coding
,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎 点赞、收藏、关注