Spring框架初解一----IOC(控制反转)及DI(依赖注入)

       Spring框架初解一----IOC(控制反转)及DI(依赖注入)



一:Spring框架IOC及DI初解


       初学Spring框架IOC,其中的门门道道让人脑子转不过来,博主也是,索性彻底研读各技术大牛对IOC的理解,这就有了以下理解,希望能给各位小伙伴带来一点启发。


 <1>  首先,IOC中文意思控制反转,那么我们要了解什么是控制反转?为什么要反转?反转谁?   

  •    IOC—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中Ioc意   味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。  
  •    为什么反转?反转是为了降低组件之间的耦合度,提高组件的灵活度,方便测试。
  •    以往组件之间的依赖性是通过new对象实现的, 如今我们可以通过Spring容器实现组件只需要依赖容器即可,而不用依      赖另一个组件。所有的依赖关系都由容器完成,而不必组件之间依赖,举个例子:你看上了一个漂亮妹砸,想要追求她,    于是 你就开始打听她的喜好,送她礼物,约她看电影等等,但是有了婚介所的存在,则完全没有必要了。你只需要将你的    需求告诉它--什么样的妹纸,它就可以给你匹配什么样的妹纸,然后你就可以直接恋爱,结婚。在这里,Spring容器就承    担着婚介所一般的功用          
  • <2>DI(依赖注入)组件之间依赖关系由容器在运行期决定,形象的说,即由容器动态的将某个依赖关系注入     到组件之中依赖注入的目的并非为软件系统带来更多功能,而是为了提升组件重用的频率,并为系          统搭建一个灵活、可扩展的平台。通过依赖注入机制,我们只需要通过简单的配置,而无需任何代码就可          指定目标需要的资源,完成自身的业务逻辑,而不需要关心具体的资源来自何处,由谁实现。


二:Spring框架初解


       通常组件之间的注入有三种:

  •   接口形式的注入-------------(java前期学习中接触)
  •   seter与geter方式的注入
  •   构造器方式的注入            

           

<1>seter注入(geter注入与此同理)

     普通注入:

       Spring框架初解一----IOC(控制反转)及DI(依赖注入)

    

       数据源对象注入:

        Spring框架初解一----IOC(控制反转)及DI(依赖注入)

        ps:此方法注入默认选择无参构造


<2>构造器注入

      设值函数:

     Spring框架初解一----IOC(控制反转)及DI(依赖注入)


     注入其他类通过ref=""的方式 

     Spring框架初解一----IOC(控制反转)及DI(依赖注入)


    

         ps:此方法注入人为改变选择有参构造

         ps:空值应写成 <null>   


<3>集合类的注入

       1.List

       2.Set

       3.Map

          4.Properties


         1.List集合的写法

           Spring框架初解一----IOC(控制反转)及DI(依赖注入)


        2.Set集合的写法

          Spring框架初解一----IOC(控制反转)及DI(依赖注入)


        3.Map集合的写法(entry<key,value>)

         Spring框架初解一----IOC(控制反转)及DI(依赖注入)


        4.Properties集合的写法(properties文件)

        Spring框架初解一----IOC(控制反转)及DI(依赖注入)



        同时,集合类的注入也可以设定值,其写法如下:

         Spring框架初解一----IOC(控制反转)及DI(依赖注入)

           Spring框架初解一,预知下回分解,请点击XXXX