4、轻量级容器、控制反转与Spring依赖注入

轻量级容器、控制反转与Spring依赖注入

1. 容器基础

1.1 容器的基本服务

容器需要为其管理的组件提供一系列基本服务,常见的基本服务如下:
- 生命周期管理
- 依赖解析
- 组件查找
- 应用配置

除了上述基本服务,若容器能提供以下中间件服务将非常实用:
- 事务管理
- 安全管理
- 线程管理
- 对象和资源池
- 组件远程访问
- 通过类似JMX的API进行组件管理
- 容器的可扩展性和可定制性

1.2 轻量级容器

轻量级容器具备上述所有特性,且不要求应用代码依赖其自身的API,即具有非侵入性。它启动速度快,无需部署到全功能的Java EE应用服务器就能提供服务,将组件部署到其中的过程也很简单。Spring应用框架就是企业界最著名的轻量级容器之一。

2. 控制反转(IoC)

2.1 控制反转的概念

容器为其管理的组件提供的一个重要优势是可插拔架构。组件实现某些接口,并通过类似接口访问所需的其他组件提供的服务,它们无需知道服务的具体实现类,因此很容易用不同的实现替换系统中的任何组件。容器的工作是创建这些组件及其依赖服务,并将它们连接起来。

依赖组件不会在组件类中使用 new 操作符实例化,而是在运行时由容器实例注入到组件中。因此,依赖的控制权从组件转移到了容器,这种模式称为控制反转(IoC)。IoC是框架中一个重要的概念,可通过好莱坞原则“别打电话给我们,我们会打给你”来理解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值