Spring Framework 是最受欢迎的 Java EE 框架之一. 在本文中,我们将了解以下内容:
- 春季框架架架构
- 春季框架的核心组件
- 春季框架伞下的各种项目
我查看了 Spring Framework、Servlet、JSP 和 JSF 的 Google 趋势图表,很明显 Spring 远远领先于所有其他 Java EE 技术。
什么是春季框架?
Spring 是 Java 企业版中最受欢迎的框架之一,世界各地的开发人员使用 Spring 来开发可靠、高质量的应用程序,而 Spring 是由 Rod Johnson 设计的。
春季核心概念 - DI,IoC,AOP
- 联合国 如果不理解什么是依赖注射和转换控制,就不可能理解什么是"春季框架". 依赖注射也叫DI,是"控制倒置"(IoC)类型之一. (- ) * ** Control的倒置** - 这是面向对象编程的原则,其中程序对象不依赖于其他对象的具体执行,但可能对其抽象(界面)有了解来进行后期交互.
- ** 依赖注射**-是结构设计图案的构成,在结构设计图案中,应用程序的每个功能都有一个,一个有条件的独立对象(服务)可以需要使用它通过接口所知道的其他对象(依赖). 附属物在创建时被转移(执行)给服务机构. 这就是我们把一个等级的要素引入另一个等级的情况。 在实践中,DI是通过向构造器传递参数或使用设置器来实现的. 实施这种方法的图书馆也称为IoC容器。 (_) ( )* [面向视角的编程] (/community/touris/spring-aop-example-troduction-ascent-advice-pointcut-joinpoint-anotions]) - 一种编程范式,允许您在应用中区分交叉(功能)功能. 这些跨越多个应用节点的功能被称作交叉关注,这些交叉注释与应用程序的即时业务逻辑相分离. 在OOP中,键单元为类;而AOP中,键单元为方面. DI帮助将应用类分离成单独的模块,AOP帮助将交叉关注与它们所影响的对象区分开来. ( (英语)
春季架构框架
Spring Framework is divided into a number of separate modules, which allows you to decide which ones to use in your application. The below image illustrates the most important modules of Spring Framework architecture. Let's look into spring ecosystem modules one by one.
春季框架核心组件
Spring 的核心容器由四个模块组成: SpEL, 背景, 核心, 豆类. 这些元素的描述如下:
- SpEL 模块提供了在执行过程中操纵对象的强大的表达语言.
- 背景是建立在 Beans 和 Core 的基础上,并允许您访问设置中定义的任何对象。 背景模块的关键元素是 ApplicationContext 界面
- 核心模块提供了框架的关键部分,包括 IoC 和 DI 属性
- Bean 模块负责创建和管理 Spring Beans - 是应用程序背景结构单元
春天框架网
春季框架 Web 层包括 Web、Web-MVC、Web-Socket、Web-Portlet 等。
- Web 模块提供下载文件、创建 Web 应用程序、休息 Web 服务等功能. 2 Web-MVC 包含 Web 应用程序的 Spring MVC 实现 3 Web-Socket 支持客户端和服务器之间的通信,在 Web 应用程序中使用 Web-Sockets 4 Web-Portlet 提供 MVC 实现的 portlet 环境
春季数据访问框架
数据访问/集成容器由JDBC、ORM、OXM、JMS和交易模块组成。
JDBC提供了一个抽象的JDBC层,并消除了开发人员需要手动注册与连接到数据库相关的单调代码的需求 2. Spring ORM提供与流行的ORM(如Hibernate,JDO)的集成,这些是JPA的实现 3.OXM模块负责连接Object / XML - XMLBeans, JAXB等 4.JMS(Java Messaging Service)模块负责创建,发送和接收消息 5.交易支持执行某些方法和类型的交易管理。
混合模块
春天还包括一些其他重要的模块,如AOP,方面,仪器,消息和测试。
AOP 实现面向编程,并允许使用 AOP 功能的全部库存. 2 Aspects 模块提供与 AspectJ 的集成,这也是一个强大的 AOP 框架 3 Instrumentation 负责支持在服务器应用中使用的类仪器和类加载器 4 Messaging 模块提供 STOMP 支持 5 最后,测试模块提供使用 TestNG 或 JUnit Framework 的测试。
春天五个特点
春天5带来了巨大的更新春天4 一些重要的特征 [春天5]( / 社区 / 教程 / 春天5)是:
- 支持 Java 8, Java 9, Java EE 7, Java EE 8, Servlet 4.0, Bean Validation 2.0 和 JPA 2.2. 我很高兴看到 Spring 正在尝试跟上使用的主要技术的最新版本
- 改进了与新模块 - 春季-jcl.
- 文件操作使用 NIO 2 流,因此提高了性能
- 支持 Reactor 3.1 Flux 和 Mono 以及 RxJava 1.3 和 2.1 作为从 Spring MVC 控制器方法的返回值
- 支持 Kotlin, Project Lombok, JSON 绑定 API 作为替代杰克逊和 GSON
- [Spring WebFlux](社区/教程/
您可以在我们的 GitHub 存储库上检查春季项目。