SpringIOC

本文深入探讨Spring框架的两大核心概念:控制反转(IOC)与依赖注入(DI),解析其工作原理,阐述如何通过三种编程风格(XML、注解、Java配置)实现bean的管理和依赖注入,以及自动装配的便利性和bean作用域的细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. Spring IOC--- IOC即Inversion of Control,控制反转;将bean的生成和管理交给Spring容器去做,可以降低代码耦合度。

2. DI--- Dependency Injection,依赖注入。

3. DI与SpringIOC的关系:DI是SpringIOC的一种实现方式(还有一种:依赖查找---> ctx.getBean(url))。

4. 为什么要使用SpringIOC?使用SpringIOC,将实例的产生和管理交给容器去做(可以管理bean的生命周期、可见性及类之间的关系等),开发者本身则可以解放出来聚焦于业务逻辑的实现。

5. 3种编程风格

schemal-based-------xml
annotation-based-----annotation
java-based----java Configuration

6. 两种注入方式:1 构造方法;2 get / set 方法

7. 要使用注解,需要开启注解和注解扫描(目前只需要开启注解扫描就可以了)。

 

8. 自动装配

IOC的注入有两个地方需要提供依赖关系,一是类的定义中,二是在spring的配置中需要去描述。自动装配则把第二个取消了,即我们仅仅需要在类中提供依赖,继而把对象交给容器管理即可完成注入。

在实际开发中,描述类之间的依赖关系通常是大篇幅的,如果使用自动装配则省去了很多配置,并且如果对象的依赖发生更新我们可以不需要去更新配置。

自动装配的方法:

  • @Autowared 默认使用 byType(根据类型),找不到再使用byName (根据属性名称,不是setXXX方法的名称);@Resource 默认使用byName

9. bean是懒加载,在调用get方法的时候才初始化。

10. springbean作用域

  • Singleton beans A 中应用ProtoType bean B的时候,B也只会实例化一次。因为A只实例化一次,所以B也只会设置一次(new一次)。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值