Spring IoC 容器和 Spring Beans 概念

拼搏现实的明天。 2024-04-03 13:25 219阅读 0赞

// 什么是控制反转?什么是容器?什么是Bean?

IOC 也称为依赖注入(DI),依赖注入是指,对象只通过构造函数参数、工厂方法的参数或在对象实例被构造或从工厂方法返回后在对象实例上设置的属性来定义它们的依赖项(依赖项指该对象使用的其他对象)的过程,然后,容器在创建这些对象时注入对象的依赖项(属性或者对象)。// 使用参数或对象属性来定义对象依赖项的过程。比较绕口

这个过程基本上是与对象直接通过构造类或 Service Locator 模式等机制来控制其依赖项的实例化或位置是相反的,因此得名控制反转。// 对象不直接通过 new 来创建自己

Spring 容器的两个基础包:org.springframework.beans 和 org.springframework.context // Bean 和 Context

BeanFactory 接口提供了一种高级的配置机制,能够管理任何类型的对象。ApplicationContext 是BeanFactory 的子接口。它在 BeanFactory 的基础上添加了如下功能: // Bean 和 Context 两个容器的区别

  • 更容易与Spring的AOP特性集成
  • 消息资源处理(用于国际化)
  • 事件发布
  • 特定的应用层上下文,比如使用 Web 应用时的 WebApplicationContext

总之,BeanFactory 提供了配置框架和基本功能,而 ApplicationContext 添加了更多适应于企业应用开发的功能。ApplicationContext 是 BeanFactory 的一个完整的超集(对 BeanFactory 的拓展),Spring 的 IoC 容器使用 ApplicationContext 进行描述。// ApplicationContext(接口)是 Spring 中具体使用的容器,它是对 BeanFactory(接口)的扩充。

在 Spring 中,bean 构成应用程序的主要组成部分,并且由 Spring IoC 容器进行管理。bean 是由 Spring IoC 容器实例化、组装和管理的对象。简单点来说,bean 只是应用程序中众多对象之一。bean 及 bean 之间的依赖关系反映在容器使用的配置元数据中(xml 配置,Java 配置)。// Bean 就是 Spring 管理的对象(Object),那什么是容器使用的元数据?

发表评论

表情:
评论列表 (有 0 条评论,219人围观)

还没有评论,来说两句吧...

相关阅读