首页 > 其他 > 详细

IOC的三种DI依赖注入(构造注入,属性注入,注解注入)

时间:2019-05-23 22:01:45      阅读:255      评论:0      收藏:0      [点我收藏+]
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd">
    <!-- 第一种无参构造注入 -->
    <bean class="com.bb.bean.Student" id="student" />

    <!-- 第二种有参构造  -->
    <!-- 通过name-->
    <bean class="com.bb.bean.Student" id="student1">
        <constructor-arg name="name" value="王五" />
        <constructor-arg name="age" value="13" />
        <constructor-arg name="stuID" value="A1" />
    </bean>

    <!-- 通过参数下标 -->
    <bean class="com.bb.bean.Student" id="student2">
        <constructor-arg index="0" value="狄仁杰" />
        <constructor-arg index="1" value="30" />
        <constructor-arg index="2" value="E1" />
    </bean>



    <!-- P名称空间注入-->
    <bean class="com.bb.bean.Student" id="stuP" p:name="赵六" p:age="13"
        p:stuID="B1" />

    <!-- 第三种属性注入 -->
    <bean class="com.bb.bean.Student" id="student3">
        <property name="name" value="李元芳" />
        <property name="age" value="16" />
        <property name="stuID" value="c1" />
    </bean> 
    
    <!-- 对象注入,属性是对象的注入 -->
     <bean class="com.bb.bean.Teachar" id="teachar">
        <property name="name" value="德莱文" />
        <property name="className" value="D1" />
    </bean>
    
    <bean class="com.bb.bean.Student" id="student4">
        <property name="name" value="卡特" />
        <property name="age" value="16" />
        <property name="stuID" value="F1" />
        <property name="teachar" ref="teachar"/>
    </bean> 
    
    <!-- 属性是集合的注入 list set map Properties -->
    <bean class="com.bb.bean.Teachar" id="teachar">
        <property name="name" value="德莱文" />
        <property name="className" value="D1" />
    </bean>
    <bean class="com.bb.bean.Teachar" id="teachar1">
        <property name="name" value="德莱の斯" />
        <property name="className" value="D2" />
    </bean>
    
    <bean class="com.bb.bean.Student" id="student5">
        <property name="name" value="卡特" />
        <property name="age" value="16" />
        <property name="stuID" value="F1" />
        
        <property name="teaList">
            <list>
                <ref bean="teachar" />
                <ref bean="teachar1" />
            </list>
        </property>
        
        <property name="teaSet">
            <set>
                <ref bean="teachar"/>
                <ref bean="teachar1"/>
            </set>
        </property>
        
        <property name="teaMap">
            <map>
                <entry key="t1" value-ref="teachar"/>
                <entry key="t2" value-ref="teachar1"/>
            </map>
        </property>
        
        <property name="pro">
            <props>
                <prop key="p1">盖伦</prop>
                <prop key="p2">亚索</prop>
            </props>
        </property>
    </bean>




</beans>

IOC的三种DI依赖注入(构造注入,属性注入,注解注入)

原文:https://www.cnblogs.com/zhangsonglin/p/10914634.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!