登录  /  注册
博主信息
博文 29
粉丝 0
评论 0
访问量 16929
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
「Spring认证」Spring 框架概述
IT胶囊
原创
614人浏览过

Spring 是最流行的企业 Java 应用程序开发框架。全球数以百万计的开发人员使用 Spring Framework 来创建高性能、易于测试和可重用的代码。

Spring 框架是一个开源的 Java 平台。它最初由 Rod Johnson 编写,并于 2003 年 6 月在 Apache 2.0 许可下首次发布。

在尺寸和透明度方面,Spring 是轻量级的。Spring 框架的基本版本大约为 2MB。

Spring Framework 的核心功能可用于开发任何 Java 应用程序,但有一些扩展可用于在 Java EE 平台之上构建 Web 应用程序。Spring 框架旨在通过启用基于 POJO 的编程模型使 J2EE 开发更易于使用并促进良好的编程实践。

使用 Spring 框架的好处

以下是使用 Spring Framework 的几个巨大好处的列表 -

Spring 使开发人员能够使用 POJO 开发企业级应用程序。仅使用 POJO 的好处是您不需要 EJB 容器产品(如应用程序服务器),但您可以选择仅使用健壮的 servlet 容器(如 Tomcat 或某些商业产品)。Spring 以模块化方式组织。尽管包和类的数量很多,但您只需要担心您需要的包和类,而忽略其余的。Spring 并没有重新发明轮子,而是真正利用了一些现有技术,如几个 ORM 框架、日志框架、JEE、Quartz 和 JDK 计时器以及其他视图技术。测试用 Spring 编写的应用程序很简单,因为依赖于环境的代码被移到了这个框架中。此外,通过使用 JavaBeanstyle POJO,使用依赖注入来注入测试数据变得更加容易。Spring 的 web 框架是一个精心设计的 web MVC 框架,它提供了一个很好的替代 web 框架,如 Struts 或其他过度设计或不太流行的 web 框架。Spring 提供了一个方便的 API 来将特定于技术的异常(例如由 JDBC、Hibernate 或 JDO 抛出)转换为一致的、未经检查的异常。轻量级 IoC 容器往往是轻量级的,尤其是与 EJB 容器相比时。这有利于在内存和 CPU 资源有限的计算机上开发和部署应用程序。Spring 提供了一个一致的事务管理接口,可以缩小到本地事务(例如使用单个数据库)和扩展到全局事务(例如使用 JTA)。

依赖注入 (DI)

Spring 最认同的技术是控制反转的依赖注入 (DI)风格。该控制反转(IOC)是一个笼统的概念,它可以在许多不同的方式来表达。依赖注入只是控制反转的一个具体例子。

在编写复杂的 Java 应用程序时,应用程序类应尽可能独立于其他 Java 类,以增加重用这些类的可能性,并在单元测试时独立于其他类进行测试。依赖注入有助于将这些类粘合在一起,同时保持它们的独立性。

究竟什么是依赖注入?我们分别看一下这两个词。这里的依赖部分转化为两个类之间的关联。例如,A 类依赖于 B 类。现在,让我们看看第二部分,注入。所有这些意味着,B 类将被 IoC 注入到 A 类中。

依赖注入可以通过将参数传递给构造函数的方式发生,也可以通过使用 setter 方法的后构造发生。由于依赖注入是 Spring Framework 的核心,我们将在单独的章节中用相关示例解释这个概念。

面向方面编程 (AOP)

Spring 的关键组件之一是面向方面的编程 (AOP)框架。跨越应用程序多个点的功能称为横切关注点,这些横切关注点在概念上与应用程序的业务逻辑分离。方面有各种常见的好例子,包括日志记录、声明性事务、安全性、缓存等。

OOP 中模块化的关键单位是类,而 AOP 中模块化的单位是方面。DI 帮助您将应用程序对象彼此分离,而 AOP 帮助您将横切关注点与它们影响的对象分离。

Spring Framework 的 AOP 模块提供了一个面向方面的编程实现,允许您定义方法拦截器和切入点,以干净地解耦实现应该分离的功能的代码。我们将在单独的章节中讨论更多关于 Spring AOP 概念的内容。


本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学