理解依赖注入(控制反转)!

来源:互联网 发布:java mina netty 编辑:程序博客网 时间:2024/06/01 19:47

最近在学spring框架,看到了依赖注入。在传统的java程序设计中,都是调用者创建一个被调用者的实例。但在spring框架中创建一个被调用者不是调用者完成的,实际这就是控制反转了。创建被调用者的工作都被spring做了,然后再注入到调用者,这就叫依赖注入。

来个接地气的讲解:

原来一个女生和一个男生的爱情传统上就是青梅竹马的方式。这就是传统的java程序设计,男生要结婚,就只有调用女生这个对象去结婚。(这说的有点勉强)

还有一个婚姻不是青梅竹马,而是父母包办。男生要结婚,不是调用女生对象,而是由父母选定,然后指定女生后,再与男生一起结婚。父母就好比spring框架,调用女生对象,然后注入到男生的婚姻中。

为什么依赖注入是种高级的东西?

就像李刚的轻量级JavaEE书中的意思,最开始玩java,需要对象,得自己去new,后来我们学会工厂模式,没对象,通过工厂去造,最后如本文,我们需要时,人家spring自动给你注入进去,省事。

0 0