写过JAVA的基本都知道Spring框架,主要是AOP,IOC,依赖性注入这几个模块!我现在对IOC(控制反转)了解比较模糊,我的理解是IOC和依赖性注入是结合的,这样的话感觉两个模块是一个模块,有没有高手来指点下

解决方案 »

  1.   

    依赖注入是一个概念。。Ioc是spring的一个模块, 依赖注入在spring中是通过Ioc容器来实现的
      

  2.   


    你的意思是依赖注入只是概念,不是模块,这个概念的具体实现是通过IOC来实现的?
      

  3.   

    应该指的是同一个东西吧,IOC就是因为各spring中的bean依赖来实现的
      

  4.   


    的确是同一个概念,IOC就是把本来由调用者创建被调用对象这个工作,转换到由IOC容器来创建并注入调用者中,这样的话,就是在代码中不会出现New这样的创建,两者相比,IOC有什么优势?
      

  5.   

    弱关联,你项目中的对象都是一个个的存在,他们之前的关系都是通过spring来管理的。spring就像一个工厂一样,帮我们做完所有的生产和组装工作,比如你现在需要一个action,action里面可能需要某些service,而这些service里面又有各自需要的dao,那么spring都会帮我们一次性的把这些对应bean都生产好,然后组装成我们需要的action的代理对象给我们使用,我们不用去关心其他东西。只需要关注我们的业务实现就可以了