Spring的autowire自动装配bean的四种方式

default

[html] view plaincopyprint?<?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"> 
 
    <bean id="computerBean" class="www.csdn.spring.bean.ComputerBean"> 
        <property name="name" value="Dell n5110" /> 
    </bean> 
 
    <bean id="deptBean" class="www.csdn.spring.bean.DeptBean"> 
        <property name="name" value="CSDN教育事业部" /> 
    </bean> 
 
    <bean id="employeeBean" class="www.csdn.spring.bean.EmployeeBean"> 
        <property name="name" value="hahahha"/> 
        <property name="computerBean" ref="computerBean"/> 
        <property name="deptBean" ref="deptBean" /> 
    </bean> 
 
</beans> 

<?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">

<bean id="computerBean" class="www.csdn.spring.bean.ComputerBean">
<property name="name" value="Dell n5110" />
</bean>

<bean id="deptBean" class="www.csdn.spring.bean.DeptBean">
<property name="name" value="CSDN教育事业部" />
</bean>

<bean id="employeeBean" class="www.csdn.spring.bean.EmployeeBean">
<property name="name" value="hahahha"/>
<property name="computerBean" ref="computerBean"/>
<property name="deptBean" ref="deptBean" />
</bean>

</beans>



byName

[html] view plaincopyprint?<?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"> 
 
    <bean id="computerBean" class="www.csdn.spring.bean.ComputerBean"> 
        <property name="name" value="Dell n5110" /> 
    </bean> 
 
    <bean id="deptBean" class="www.csdn.spring.bean.DeptBean"> 
        <property name="name" value="CSDN教育事业部" /> 
    </bean> 
 
    <bean id="employeeBean" class="www.csdn.spring.bean.EmployeeBean" 
        autowire="byName"> 
        <property name="name" value="hahahha"/> 
    </bean> 
 
</beans> 

<?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">

<bean id="computerBean" class="www.csdn.spring.bean.ComputerBean">
<property name="name" value="Dell n5110" />
</bean>

<bean id="deptBean" class="www.csdn.spring.bean.DeptBean">
<property name="name" value="CSDN教育事业部" />
</bean>

<bean id="employeeBean" class="www.csdn.spring.bean.EmployeeBean"
autowire="byName">
<property name="name" value="hahahha"/>
</bean>

</beans>
byType

[html] view plaincopyprint?<?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"> 
 
    <bean id="computerBean" class="www.csdn.spring.bean.ComputerBean"> 
        <property name="name" value="Dell n5110" /> 
    </bean> 
 
    <bean id="deptBean" class="www.csdn.spring.bean.DeptBean"> 
        <property name="name" value="CSDN教育事业部" /> 
    </bean> 
 
    <bean id="employeeBean" class="www.csdn.spring.bean.EmployeeBean" 
        autowire="byType"> 
        <!-- <property name="name" value="hahahha"/> --> 
        <!-- <property name="computerBean" ref="computerBean"/> 
        <property name="deptBean" ref="deptBean" /> --> 
 
    </bean> 
 
</beans> 

<?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">

<bean id="computerBean" class="www.csdn.spring.bean.ComputerBean">
<property name="name" value="Dell n5110" />
</bean>

<bean id="deptBean" class="www.csdn.spring.bean.DeptBean">
<property name="name" value="CSDN教育事业部" />
</bean>

<bean id="employeeBean" class="www.csdn.spring.bean.EmployeeBean"
autowire="byType">
<!-- <property name="name" value="hahahha"/> -->
<!-- <property name="computerBean" ref="computerBean"/>
<property name="deptBean" ref="deptBean" /> -->

</bean>

</beans>
constructor



[html] view plaincopyprint?<?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"> 
    <bean id="computerBean" class="www.csdn.spring.bean.ComputerBean"> 
        <property name="name" value="Dell n5110" /> 
    </bean> 
 
    <bean id="deptBean" class="www.csdn.spring.bean.DeptBean"> 
        <property name="name" value="CSDN教育事业部" /> 
    </bean> 
 
    <!-- <bean id="employeeBean" class="www.csdn.spring.bean.EmployeeBean" 
        autowire="constructor"> 
    </bean> --> 
    <bean id="employeeBean" class="www.csdn.spring.bean.EmployeeBean"/> 
     
    <bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"></bean> 
</beans> 

猜你喜欢

转载自ddlgyq.iteye.com/blog/1862175