Spring5.0已经出来了,Springboot已经风靡全球, Spring怎么一步一步走过来的, 让我们看看其前世今生~~~
这是关于什么是Spring Framework,但它是如何开发的?嗯,背后有一个有趣的历史。让我们一瞥Spring Framework的历史和起源。
2002年10月,澳大利亚计算机专家罗德约翰逊写了一本名为Expert One-on-One J2EE设计和开发的书。在本书中,他提出了一种基于普通Java类(POJO)和依赖注入的简单解决方案。他编写了超过30,000行基础设施代码,其中包括许多可重用的Java接口和用于开发应用程序的类。2003年2月左右,Rod,Juergen和Yann开始合作开展Spring项目。给出了“Spring”这个名称,因为它意味着在传统J2EE的“Winter”之后重新开始。
以下是关于Spring历史上主要版本的时间表:
为什么选择Spring Framework?
下面是一张图表,显示了Spring和其他各种框架之间的比较。
以下是截至2016年5月的调查图表。从图表中可以看出,Spring Framework在其领域非常受欢迎,并且自2014年以来一直在t op上保持其地位。
Spring Frame 作品受欢迎的原因
Spring Framework受欢迎程度通常有三个主要原因。
- 简单
- Testablity
- 松耦合
让我们详细讨论这些主题。
简单: Spring Framework很简单,因为它使用POJO和POJI模型是非侵入性的。<>
- POJO(普通旧Java对象):未与任何技术或任何框架耦合的Java类称为“ POJO ”。
- POJI(普通旧Java接口):未与任何技术或任何框架工作耦合的Java接口称为“ POJI ”。
可测试性: 对于编写S pring应用程序,服务器不是必需的。但是对于struts和EJB应用程序,如果要测试应用程序,则需要服务器。每次必须重新启动服务器时,可能需要对源进行大量更改并查看这些更改。这变得乏味且耗时。对于 Spring Framework,它有自己的容器来运行应用程序。
松散耦合: Spring Framework是松散耦合的,因为它具有依赖注入,AOP等概念。这些功能有助于减少依赖性并增加代码中的模块性。让我们通过一个例子来理解这一点。
这里我有一个Bike接口,它有一个start()方法。它由三个级别进一步实施,即:Yamaha,Honda和Bajaj。
1 2 3 4 |
|
这里的类Rider创建了一个实现Bike接口的类的对象。
1 2 3 4 五 6 7 8 9 10 11 12 |
|
现在Spring Framework容器可以根据需要注入实现Bike接口的任何类的对象。这是松散耦合的工作原理。
Spring框架架构
从上图中可以看出,Spring具有由具有各自功能的不同模块组成的分层体系结构。这些模块概括为以下层:
- Spring
- Data Access/Integration
- EL表达式
- AOP(面向方面编程)
- Instructment
- Test
您可能想知道,Spring Framework具有分层架构的优势是什么?让我们通过以下几点找出答案:
- Spring Framework有效地组织了您的中间层对象。
- 无论运行时环境如何,Spring Framework的配置管理服务都可以在任何架构层中使用。
- Spring Framework在整个应用程序中以一致的方式处理配置。这消除了使用各种自定义属性文件格式的需要。
- Spring Framework的设计使得使用它构建的应用程序将尽可能少地依赖于它。
-
由于使用了接口, Spring Framework促进了良好的编程实践。