spring-210727-01–IOC容器–Bean管理xml方式-自动装配
自动装配:
根据指定装配规则(属性名称或者属性类型),Spring自动将匹配的属性值进行注入。
演示
Emp.java
package com. bgy. autowire ;
public class Emp {
private Dept dept;
public void setDept ( Dept dept) {
this . dept = dept;
}
@Override
public String toString ( ) {
return "Emp{" +
"dept=" + dept +
'}' ;
}
}
Dept.java
package com. bgy. autowire ;
public class Dept {
}
autowiretest.xml(笔记在这儿哦)
<?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 = " emp01" class = " com.bgy.autowire.Emp" >
< property name = " dept" ref = " dept" > </ property>
</ bean>
< bean id = " emp02" class = " com.bgy.autowire.Emp" autowire = " byName" >
</ bean>
< bean id = " dept" class = " com.bgy.autowire.Dept" > </ bean>
</ beans>
TestAutowire.java
import com. bgy. autowire. Emp ;
import org. junit. Test ;
import org. springframework. context. ApplicationContext ;
import org. springframework. context. support. ClassPathXmlApplicationContext ;
public class TestAutowire {
@Test
public void test01 ( ) {
ApplicationContext context = new ClassPathXmlApplicationContext ( "autowiretest.xml" ) ;
Emp emp01 = context. getBean ( "emp01" , Emp . class ) ;
System . out. println ( emp01) ;
}
@Test
public void test02 ( ) {
ApplicationContext context = new ClassPathXmlApplicationContext ( "autowiretest.xml" ) ;
Emp emp02 = context. getBean ( "emp02" , Emp . class ) ;
System . out. println ( emp02) ;
}
}