Spring2.5 IoC之bean的四种注入方式(实践篇)

1、新建一个java工程名叫DI(依赖注入的意思),加入commons-loggin.jar和spring.jar。注意下面的代码含义见其注释,这里就不再作解释。

2、整个工程测试完后spring配置文件beans.xml文件的代码如下:

Xml代码
  1. <?xml version="1.0" encoding="gbk"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.        xsi:schemaLocation="http://www.springframework.org/schema/beans   
  5.            http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">  
  6.    <!--构造器注入简单类型的参数-->  
  7.    <bean name="cipb" class="com.iwtxokhtd.constructor.injection.bean.ConstructorInjectionPropertyBean">  
  8.       <!--根据类型顺序来匹配,要指定type属性-->  
  9.       <constructor-arg type="int" value="25"/>  
  10.       <!--必须是java.lang.String,不能是String,否则会报异常-->  
  11.       <constructor-arg type="java.lang.String" value="iwtxokhtd"/>  
  12.    </bean>  
  13.    <!--用索引可以避免多个同类型的情况,从0开始-->  
  14.     <bean name="indexProsBean" class="com.iwtxokhtd.constructor.injection.bean.ConstructorInjectionPropertyBean">  
  15.       <constructor-arg index="0" value="20"/>  
  16.       <constructor-arg index="1" value="tujiyue"/>  
  17.    </bean>  
  18.      
  19.    <!--构造器注入对象-->  
  20.    <bean name="ciob" class="com.iwtxokhtd.constructor.injection.bean.ConstructorInjectionObjectBean">  
  21.      <constructor-arg>  
  22.         <ref bean="depentedBean"/>  
  23.      </constructor-arg>  
  24.      <constructor-arg type="java.lang.String" value="增加一个简单类型"/>  
  25.    </bean>  
  26.     <!--被依赖的bean,其属性也采用构造器注入-->  
  27.    <bean name="depentedBean" class="com.iwtxokhtd.constructor.injection.bean.DepentedObjectConstructorBean">  
  28.      <!--以下两个属性都是java.lang.String最好用index-->  
  29.      <constructor-arg type="java.lang.String" value="属性一"/>  
  30.      <!--下面这种写法与上相同-->  
  31.      <constructor-arg type="java.lang.String">  
  32.         <value>属性二</value>  
  33.      </constructor-arg>  
  34.    </bean>  
  35.    <!--setter注入简单类型属性-->  
  36.    <bean name="sipb" class="com.iwtxokhtd.setter.injection.bean.SetterInjectionPropertyBean">  
  37.      <property name="id" value="1"/>  
  38.      <!--这种写法与上一样-->  
  39.      <property name="name">  
  40.         <value>iwtxokhtd</value>  
  41.      </property>  
  42.    </bean>  
  43.    <!--setter注入对象类型-->  
  44.    <bean name="siob" class="com.iwtxokhtd.setter.injection.bean.SetterInjectionObjectBean">  
  45.     <!--那个简单的类型-->  
  46.     <property name="year" value="60"/>  
  47.     <!--对象类型-->  
  48.     <property name="dosb" ref="depentSetterBean"/>  
  49.     <!--等价于上面的配置方式-->  
  50.     <!--   
  51.     <property name="dosb">  
  52.      <ref bea
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值