Advertisement

Spring的IOC原理以及思维导图

阅读量:

Spring知识细节的思维导图

控制反转

在这里插入图片描述

spring ioc容器

在Spring框架中主要组件仅限于Core、Context以及Bean三者。它们奠定了整个Spring架构的基础,在其缺失下便无法实现诸如AOP(面向切面编程)、Web等关键特性。

Spring 整体结构图

在这里插入图片描述

如果要在三个核心中再多选一个,则非Bean莫属。可以认为,在Java EE组件体系中占据主导地位的核心技术必然是与 beans 直接相关的技术体系。从Spring的整体架构来看,默认情况下构建企业级应用所依赖的技术基础一定是基于与 beans 相关的设计理念和实现方式;从Spring的整体架构来看,默认情况下构建企业级应用所依赖的技术基础一定是基于与 beans 相关的设计理念和实现方式;从Spring的整体架构来看,默认情况下构建企业级应用所依赖的技术基础一定是基于与 beans 相关的设计理念和实现方式;

为什么Spring变得如此流行?我发现它解决了最关键的问题——让它通过配置文件或注解来管理对象之间的关系。这些注入关系由一个名为Ioc的容器来管理;而Ioc容器则将对象封装在Bean中以便进行管理和额外操作。

在这里插入图片描述

核心组件协同工作

在这里插入图片描述

BeanFactory与ApplacationContext的区别

IOC中主要功能模块由Beanfactory实现复杂功能支持;而ApplicationContext则基于BeanFactory进行概括性地应用于企业级应用开发。

在这里插入图片描述

我们应该怎么理解和认识Spring的配置文件呢?

Spring 的配置文件是依据 Spring 工厂进行 Bean 生产、依赖关系注入及 Bean 实例分发而设计的一种方案( blueprint ), J2EE 程序员必须掌握并灵活运用这份方案以精确传达自己对 Bean 生产的具体意图。

这种方案通常指的是一个或多个标准的 XML 文档( XML 配置文件 ),其中 <applicationContext.xml> 是 Spring 的默认配置文件( default configuration file )。当系统找不到其他可用的配置文件时,默认会加载该 XML 文档。

Spring容器成功启动需要以下三方面的条件同时具备:

  • 该应用中涉及的Spring组件必须位于其父级组件之内
  • 该应用应预先配置完整的Bean集合
  • 该应用中的各个Bean都应位于其父级组件之内

当Spring启动时会从应用程序中读取Bean的配置信息,并在容器中创建一个对应的Bean配置注册表。随后系统会根据这张注册表来创建Bean实例,并确保这些实例之间有着良好的依赖关系装配完毕。这样一来为上层应用提供了运行所需的完整环境。而这些元数据信息主要包括以下五个部分:

  • Bean的具体实现类
    • 包括数据源连接数、用户名和密码等关键信息
    • Spring基于依赖关系配置完成了不同Bean之间的装配工作
    • 包括对象生命周期范围以及在各个生命周期阶段所对应的回调函数设置
    • 具体说明了如何构建该对象
      如下图所示的是各模块之间相互关联的工作流程图:
在这里插入图片描述

全部评论 (0)

还没有任何评论哟~