注入

1、注入基本值

  <value/>元素可以通过字符串指定属性或构造器参数的值。容器将字符串从java.lang.String类型转化为实际的属性或参数类型后给Bean对象注入。

  <bean id="" class="">

    <property name="">

      <value></vale>

    </property>

    ...

  </bean>

  也可以通过value的属性指定基本值

  <bena id="" class="">

    <property name="" value=""/>

    ... ...

  </bean>

2、注入Bean对象 

  注入Bean对象,定义格式有内部Bean和外部Bean两种

  注入内部Bean 

  <bean id="userService" class="com.service.userService">

    <property name="userDAO">

      <bean class="com.dao.OraceUserDao"></bean>

    </property>

  </bean>

  注入外部Bean(引用方式,方便重用)

  <bean id="userDAO" class="com.dao.OracleUserDao"/>

  <bean id="userService" class="">

    <property name="userDAO" ref="userDAO"/>

  </bean>

3、注入集合

  通过<list/>、<set/>、<map/>及<props/>元素可以定义和设置与Java类型中的对应List、Set、Map及Properties的属性值。

  List集合注入

  <bean id="messageBean" class="com.util.MessageBean"/>

    <property name="friends">

      <list>

        <value></value>

        ... ...

      </list>

    </property>

    ...

  </bean>

  Set集合

    同上

  Map集合

    <bean id="messageBean" class="com.util.MessageBean">

      <property name="books">

        <map>

          <entry key="1001" value=""></entry>

          ... ...

        </map>

      </property>

      ... ...

    </bean>

  Properties集合注入

    <props>

      <prop key="userName">root</prop>

      ... ...

    </props>

4、引用方式List集合注入

  <util:list id="oneList">

    <value></value>

    ...

  </util:list>

  <bean id="messageBean" class="com.util.MessageBean">

    <property name="friends" ref="oneList">

    ... ...

  </bean>

  Set Map Properties都可以采用引用方式注入

  <util:list/> <util:set/> <util:props/>

5、注入Spring表达式值

  Sprig引入了一种表达式语言,这和统一的EL在语法上很相似,这种表达式语言可以用于定义基于XML和注解的配置的Bean,引入一个properties文件信息。

  <util:properties id="" location=""/>

  <bean id="" class="classpath:org/config/jdbc.properties">

    <property name="" value="#{jdbcProperties.username}"/>

    ... ...

  </bean>

6、注入null或空字符串

  Spring将属性的空参数当做空String,下面给Email属性设置了空String("")

  <bean id="" class="">

    <property name="email" value=""/>

  </bean>

  如果需要注入null值,可以使用<null/>元素

  <bean id="" class="">

    <property name="email">

      <null/>

    </property>

  <bean/>

你可能感兴趣的:(注入)