【Spring】1—Spring简介
⭐⭐⭐⭐⭐⭐
Github主页👉https://github.com/A-BigTree
笔记链接👉https://github.com/A-BigTree/Code_Learning
⭐⭐⭐⭐⭐⭐
如果可以,麻烦各位看官顺手点个star~😊
如果文章对你有所帮助,可以点赞👍收藏⭐支持一下博主~😆
文章目录
- 1 Spring简介
- 1.1 Spring Framework优良特性
- 1.2 五大功能模块
1 Spring简介
Spring官网:Spring Home
1.1 Spring Framework优良特性
Spring Framework
:Spring的基础框架,可以视为Spring基础设施,基本上任何其他Spring项目都是以Spring Framework为基础的。
- 非侵入式:使用Spring Framework开发应用程序时,Spring对应用程序本身的结构影响非常小。对领域模型可以做到零污染;对功能性组件也只需要使用几个简单的注解进行标记,完全不会破坏原有结构,反而能将组件结构进一步简化。这就使得基于Spring Framework开发应用程序时结构清晰、简洁优雅;
- 控制反转:
IOC——Inversion of Control
,翻转资源获取方向。把自己创建资源、向环境索取资源变成环境将资源准备好,我们享受资源注入; - 面向切面编程:
AOP——Aspect Oriented Programming
,在不修改源代码的基础上增强代码功能:- 抽取重复代码:将方法内部重复的代码抽取出来;
- 代码增强:我使用抽取出来的代码套用到某个独立功能上,就对这个独立功能进行了增强;
- 容器:
Spring IOC
是一个容器,因为它包含并且管理组件对象的生命周期。组件享受到了容器化的管理,替程序员屏蔽了组件创建过程中的大量细节,极大的降低了使用门槛,大幅度提高了开发效率; - 组件化:Spring实现了使用简单的组件配置组合成一个复杂的应用。在Spring中可以使用XML和Java注解组合这些对象。这使得我们可以基于一个个功能明确、边界清晰的组件有条不紊的搭建超大型复杂应用系统;
- 声明式:很多以前需要编写代码才能实现的功能,现在只需要声明需求即可由框架代为实现;
- 一站式:在
IOC
和AOP
的基础上可以整合各种企业级应用的开源框架和优秀的第三方类库。而且Spring旗下的项目已经覆盖了广泛领域,很多方面的功能性需求可以在Spring Framework的基础上全部使用Spring来实现;
1.2 五大功能模块
功能模块 | 功能介绍 |
---|---|
Core Container | 核心容器,在 Spring 环境下使用任何功能都必须基于 IOC 容器。 |
AOP&Aspects | 面向切面编程 |
Testing | 提供了对 junit 或 TestNG 测试框架的整合。 |
Data Access/Integration | 提供了对数据访问/集成的功能。 |
Spring MVC | 提供了面向Web应用程序的集成功能。 |