spring之IoC理解

          之前学习spring的时候我觉得大家都应该首先学习的就是IoC,也就是常见的控制反转,别人也把其思想称作依赖注入,而对于控制反转从文字上来讲就是将原有的对某些类和对象或者接口的控制权利交给第三方来管理,这一角度是从调用者本身的角度出来的,而如果从外部来看,也就是第三方容器将自己管理的对象或者接口注入到原有的调用者中的一个过程,这样可能更符合人类的思维习惯。

          上面这样的文字在很多书本上都是很常见的,其实每个人都会有自己的理解,而上面的话 也就是我自己对IoC的一个理解。

           另外就是IoC的实现机理最主要的就是依赖于java的反射机制,为什么这么说呢?因为我们常说的容器如果想要实现自动化的创建对象,并且能构将某些方法或者属性或者是接口让另外的调用者使用,其必须有自身创建对象的能力,而java的一大特色反射便能解决这个问题,而反射肯定也不能没有任何地方去读取,这样就存在了对某些bean进行说明的配置文件,对于注解的话那就是后话了,(我不能确定注解和配置文件出现的先后顺序,但是我们接触的顺序应该都是先配置文件再注解的)而spring也正是通过这些配置文件来将对象加载到容器中从而实现供调用者使用。


            讲完这些之后就要讲一下上面所说的容器了,与其说是容器不如说是工厂,因为其实产生对象的地方嘛,这个地方最主要的就是两个对象了 beanFactory和ApplicationContext了,先说一下他们的不同点吧,第一个最重要的不同点就是ApplicationContext为我们程序员做了很多工作,它会将一些接口都注册到上下文中,而beanFactory则需要我们手动来设置。;另外一点不同之处就是beanFactory只有当我们去getBean的时候才会加载对象,而不会将所有对象都加载到容器中,后者则会将所有配置文件中是单例模式的都加载进来而其他的都只是在使用的时候才会加载。

             对于两者更具体的介绍,我打算细看一下他们对bean的生命周期的管理之后,从对bean的管理方面来单独讲解这2个对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值