spring-依赖注入的方式

    技术2026-08-25  7

     

    1.依赖注入的方式

    (接口注入,构造方法注入,setter方法注入

     <constructor-arg ref="personDao"/><!-- 构造方法注入 -->

     <property name="personDao" ref="personDao"/> <!--  setter方法注入-->

      

    一、接口注入

          是现在不甚提倡的一种方式,因为需要强制“被注入对象”实现不必要的接口,

          显得比较具有侵入性.

     

    二、构造方法注入

          优点是:组件实例化时就同时设置了所有依赖的组件,不会漏掉某个依赖组

                        件,初始化时机较早。

          缺点是:参数多时不直观,且构造方法有重载时依赖参数不易区分,XML

                        可读性较差。

    xml配置文件中,忘了注入构造方法中已经指定的对象,则会org.springframework.beans.factory.UnsatisfiedDependencyException:

    xml配置文件中已经注入某个对象,但构造方法中没有此对象,则会

     org.springframework.beans.factory.BeanCreationException:

     

    三、setter方法注入

           优点是:XML直观易读,相关依赖关系一目了然。                     

           缺点是:若忘记注入某个组件,运行时会抛出空指针异常。

    最新回复(0)