spring ioc 和 DI的深入

本文详细介绍了Spring框架中的IoC容器工作原理,包括对象的创建、依赖注入的过程及其实现方式。还探讨了如何从IoC容器中获取对象,并解释了在这一过程中可能出现的复杂情况。

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

IOC将对象注入容器内

	1.ioc的时候,在给对象 DI属性的时候,可能不是简单的 set属性
	  例如mybatis, 它的setSqlFactory方法就是 new SqlSessionTemplate(sqlSessionFactory),这得根据你的set方法是怎么写的

从IOC中取出对象,赋值

	1.从ioc中取出对象,调用的是context.getBean("beanId")
	这个也可能不是简单的取出对象,如果该Bean是 FactoryBean 那么getBean的时候调用 它的 getIbject方法
	例如mybatis的取出mapper,就是调用的mapperFactoryBean的getObject方法
	返回的是一个 mapperProxy(invocationHandler)的 代理对象

ioc有2步:1.通过无参构造创建对象,2.通过set方法,字段,构造方法依赖注入(有2种:1.手动注入,2.自动装配 byName or byType)

spring Ioc 的核心 就是获取 到 类的 class对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值