DI(依赖注入)----------spring构造注入的两种语法介绍

574 篇文章 4 订阅
272 篇文章 1 订阅
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!-- 构造注入:spring调用类的有参数构造方法,在构造方法中给属性赋值。
                 语法:使用<constructor-arg>表示构造方法的参数。
                  一个构造方法的参数对应一个<constructor-arg>标签
     -->
     
     
     
     <!-- 构造注入, 使用name属性-->
     <bean id="myStudent" class="com.bjpowernode.ba03.Student">
     	<!-- 构造注入,使用name属性
     	     name:构造方法的形参名
     	     value:简单类型参数的值
     	     ref:引用类型参数的值
     	 -->
     	 <constructor-arg name="myage" value="22" />
     	 <constructor-arg name="myname" value="张三" />
     	 <constructor-arg name="myXueXiao" ref="mySchool" />
     </bean>
    
    
    <!-- 构造注入,使用index属性 -->
    <bean id="myStudent1" class="com.bjpowernode.ba03.Student">
    	<!-- 使用构造注入,使用index属性
    	     index:表示构造方法参数的位置, 从 0 开始
    	     value:简单类型参数的值
     	     ref:引用类型参数的值
    	 -->
    	 <constructor-arg index="1" value="26" />
    	 <constructor-arg index="0" value="李四" />
    	 <constructor-arg index="2" ref="mySchool" />
    </bean>
     
    <!-- 构造注入,省略index -->
    <bean id="myStudent2" class="com.bjpowernode.ba03.Student">
    	<!-- 使用构造注入,使用index属性
    	    
    	     value:简单类型参数的值
     	     ref:引用类型参数的值
    	 -->
    	 <constructor-arg  value="周丽" />
    	 <constructor-arg  value="20" />
    	 <constructor-arg  ref="mySchool" />
    </bean>
     
     <bean id="mySchool" class="com.bjpowernode.ba03.School">
     	<property name="name" value="清华大学" />
     	<property name="address" value="北京的海淀区" />
     </bean>
     
    
</beans>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值