Spring 教程:什么是 Spring 框架以及如何安装
什么是 Spring 框架?
Spring 框架 是一个开源框架,用于使用 Java 作为编程语言构建 Web 应用程序。它功能强大且轻量级且易于使用,并且为轻松开发 Java 应用程序提供了支持。 Spring是一个轻量级框架,可以认为是框架中的框架,因为它还提供了对hibernate、struts、tapestry、JSF等各种框架的支持。
在本 Java Spring 教程中,您将学习:
- 什么是 Spring 框架?
- Spring框架的特点
- 春天的简史
- Spring 框架架构
- Spring – MVC 框架
- 面向方面的编程
- Java Spring的安装
- Spring框架的优点
- Spring框架的缺点
- 顶级 Spring MVC 框架面试问答
Spring 框架的特点
现在在这个 Spring 教程中,我们将介绍 Spring Framework 的一些最突出的特性:
- 预定义模板
- 易于测试
- 松散耦合
- 轻量级
- 快速发展
- 强大的抽象
- 提供一系列资源
- 声明式支持
- 提供全面的工具
春天的简史
现在在这个 Spring Framework 教程中,我们将介绍 Spring 历史中的一些重要里程碑:
- Spring 框架由 Rod Johnson 编写,于 2002 年 6 月首次发布。
- 春天啦 s t 版本于 2004 年 3 月发布
- 2006 年 Spring 1.2.6 版本发布
- 2006 年 10 月发布 Spring 2.0 版本
- 2007 年 11 月发布的 Spring 2.5 版本
- 2009 年 12 月发布 Spring 3 版本
- 2011 年 12 月发布 Spring 3.1 版本
- Spring 框架 4 版本于 2013 年 12 月发布,支持 Java 8
- 2015年7月发布的Spring框架4.2.0版本
- 2015年9月发布的Spring框架4.2.1版本
- 2016 年 6 月 10 日发布的 Spring Framework 4.3 版本
- 2017年6月发布的Spring框架5.0版本
Spring 框架架构
Spring Framework Architecture 提供了 20 个模块,可根据应用需求使用。
核心 和豆 提供框架的基础部分,包括 IoC 和 DI。
核心容器
Core Container 进一步细分为 Core、Beans、Context 和 Expression Language 模块等子组件。
让我们详细了解这些模型:
弹簧核心:
Core 模块提供了 spring 框架的所有主要组件。它包括 IoC(控制反转)和依赖注入功能。
弹簧豆:
该模块提供了 BeanFactory,它是工厂模式的复杂实现。
弹簧上下文:
Context 模块建立在 Core 和 Beans 模块提供的坚实基础之上,它是帮助您访问任何定义和配置的对象的媒介。
Spring 表达式语言 (SpEL):
该模块提供表达式语言,用于在运行时修改和查询对象图。
数据访问/集成:
数据访问和集成层由JDBC、ORM、JDBC、OXM、JMS和Transaction模块组成。
- ORM:ORM 模块为代码提供一致性/可移植性,而与数据访问技术无关。它将基于面向对象的映射概念。
- JDBC 模块由一个 JDBC 抽象层组成。它可以帮助您满足执行 JDBC 相关编码的需要。
- OXM:对象 XML 映射器 (OCM) 可帮助您将对象转换为 XML 格式,反之亦然。
- Java Messaging Service 模块提供了生产和消费消息等功能。
- 事务:此模块提供声明式和编程式管理方法,用于实现独特的接口和所有类型的 POJO(普通旧 Java 对象)
春季网络:
网络 :此模块使用 servlet 侦听器和面向 Web 的应用程序上下文。它还提供了面向 Web 的集成功能和多部分文件上传的功能。
网络小服务程序 :该模块存储基于 MVC 的 Web 应用程序实现。
网络套接字 :模块在 Web 应用程序中提供客户端和服务器之间基于 WebSocket 的双向通信。
Web-Portlet :这个模块也叫 Spring-MVC-Portlet 模块。它为基于 Spring 的 Portlet 提供并复制了 Web-Servlet 模块的所有功能。
AOP :AOP 语言是一种有用的工具,它允许开发人员将企业功能添加到应用程序中。
Instrumentation:该模块提供类检测和加载器实现。用于特定的应用服务器。
测试: 该模块支持使用 TestNG 或 JUnit 工具测试 Spring 组件。它提供了 Spring ApplicationContexts 的一致加载和这些上下文的缓存。
Spring – MVC 框架
现在在这个 Spring Framework 教程中,我们将学习 Spring MVC 框架:
Spring Web MVC 框架提供了模型-视图-控制器架构提供的组件,可帮助您成为灵活且松散耦合的 Web 应用程序。
MVC 模式允许您分离应用程序的不同方面,同时提供这些元素之间的松散耦合。 Spring MVC 还可以帮助您构建灵活且松散耦合的 Web 应用程序。
MVC 设计还允许您分离业务逻辑、表示逻辑和导航逻辑。它还提供了一个优雅的解决方案,在 DispatcherServlet 的帮助下在 Spring Framework 中使用 MVC。
MVC 在 Spring 中是如何工作的?
现在在 Spring 教程中,我们将学习 MVC 在 Spring 中的工作原理:
- DispatcherServlet 收到请求。
- 之后,DispatcherServlet 与 HandlerMapping 进行通信。它还会撤销与该特定请求关联的控制器。
- Controller 通过调用服务方法以及 DispatcherServlet 返回的 ModelAndView 对象来处理此请求。
- 视图名称被发送到 ViewResolver 以搜索要调用的实际视图。
- 之后,将 DispatcherServlet 传递给 View 以呈现结果。
- 通过使用模型数据,视图呈现并将结果返回给用户。
面向方面的编程
面向切面编程允许程序的全局属性决定如何编译成可执行程序。
模块化的关键单元是一个方面而不是一个类。面向切面编程将程序的逻辑分解成不同的部分,称为关注点。
横切关注点可能会影响整个应用程序,并集中在事务安全、管理、日志记录、身份验证等代码中的一个位置。
它也可以被认为是一种动态装饰器设计模式。此模式还提供了一种附加行为,可通过包装原始类并复制其接口并删除原始类来添加到现有类。
核心 AOP 概念
面向切面编程有七个核心概念。
让我们详细讨论一下:
- 方面 :方面是允许实现 JEE 应用程序的类。它涉及跨多个类,例如事务管理、安全性等。Aspects 可以是使用 Spring XML 配置配置的典型类,也可以是使用 @Aspect 注释进行注释的常规类。
- 连接点: 它是程序执行中可以插入方面的候选点。它可以是一个被抛出异常时调用的方法,甚至是一个被修改的字段。
- 建议: 建议是针对特定连接点采取的实际操作。当特定连接点遇到应用程序中的匹配点时,将执行此方法。
- 切入点: 它是一个表达式,可以与连接点匹配,以检查是否应该执行该通知。
- 目标对象: 基于目标对象的设备被应用。在 AOP 中,会在运行时创建一个子类,其中应覆盖目标方法,并根据其配置包含通知。
- 代理: 此对象应在将建议应用于目标对象后创建。
- 织造: 这是一种将方面与其他应用程序对象或类型链接以构建建议对象的方法。
Java Spring的安装
现在在这个 Java Spring 教程中,我们将逐步学习在您的计算机中安装 Java Spring 的信息:
步骤 1) 访问 www.eclipse.org。
步骤 2) 下载 Eclipse Neon 安装程序并将其安装在您的 Windows 系统上。
步骤 3) 点击“下载64位”按钮。
第 4 步) 转到 Eclipse IDE for Java Developers 并点击“64-bit”链接。
第 5 步) 点击“Windows 64-bit”链接。
第 6 步) 点击“下载”按钮下载压缩包。
第 7 步) 将下载的 zip 解压到特定文件夹。
第 8 步) 点击“浏览”按钮选择工作区目录。
第 9 步) 点击“选择文件夹”选择一个文件夹。
该过程将显示如下屏幕所示。
步骤 10) 打开 Eclipse Marketplace 客户端。
- 转到帮助菜单。
- 点击“Eclipse Marketpalce”选项。
步骤 11) 搜索并安装 Spring 插件。
- 在“查找”文本框中输入 Spring。
- 点击“搜索”图标。
- 点击“安装”按钮安装插件。
步骤 12) 确认选择的功能并点击“确认”按钮。
步骤 13) 接受条款和条件并安装软件。
- 点击“我接受许可协议的条款”单选按钮。
- 点击“完成”按钮完成安装。
将显示一个欢迎屏幕,其中包含软件安装进度。
第 14 步) 点击“Restart Now”按钮重启Eclipse IDE并应用更改。
将显示以下屏幕:
Spring 框架的优点
以下是使用 spring 的重要优点/好处。
- Spring 允许开发人员在 POJO 的帮助下开发企业级应用程序。
- 为 Hibernate、JDBC、Hibernate、JPA 等提供模板,以避免编写冗长的代码。
- 为 Java Enterprise Edition (JEE) 提供抽象。
- 您可以以模块化方式组织弹簧。因此,如果包和类的数量很大,您只需要了解您需要的部分,而忽略其余部分。
- 它为事务、格式化、验证、缓存等提供声明式支持。
- 使用 spring 开发的应用程序很简单,因为依赖环境的代码被移到了这个框架中。
Spring 框架的缺点
以下是 Spring Framework 的缺点/缺点。
- Java spring 提供了太多的限制。
- 代码是公开的,对所有人可见。
- 它也不提供定制功能。
总结:
- Spring 框架是一个易于使用的开源 Java 平台
- 预定义模板和松散耦合是 Java Spring 的重要特性
- Spring 框架由 Rod Johnson 编写,于 2002 年 6 月首次发布
- Spring 框架提供 20 个模块,可根据应用需求使用。
- Java spring dispatcherServlet 与 HandlerMapping 通信。它还会撤销与该特定请求关联的控制器。
- 面向方面的编程允许程序的全局属性决定如何将其编译为可执行程序。
- Java Spring 的最大优势在于它允许开发人员在 POJO 的帮助下开发企业级应用程序
- Java Spring 最大的缺点是限制太多。
java