(一)IOC:控制反轉(zhuǎn) 控制被調(diào)用者不再由調(diào)用者完成,而是由spring完成谈山,然后注入調(diào)用者宏怔。也稱為依賴注入(DI)。
注入:Spring容器加載bean配置時(shí)臊诊,完成對變量的賦值。兩種方式:設(shè)值注入(直觀触机,自然)玷或,構(gòu)造注入(可在控制器中決定依賴關(guān)系順序)。
xml:
//設(shè)值注入(設(shè)值屬性)
<bean id="xService" class="com.imooc.ic.x.service.XServiceImpl">
<property name="xDAO" ref="xDAO"/></bean>
//構(gòu)造注入(利用構(gòu)造器)
<bean id="xService" class="com.imooc.ic.x.service.XServiceImpl">
<constructor-arg name="xDAO" ref="xDAO"/></bean>
Impl實(shí)現(xiàn)類:
public class xServiceImpl implements xService{
private xDAO xDAO;
//設(shè)值注入,set方法
public void setxDAO(xDAO xDAO){
this.xDAO=xDAO;
}
//構(gòu)造器注入
public xServiceImpl(xDAO xDAO){
this.xDAO=xDAO;
}
//其它函數(shù)實(shí)現(xiàn)方法
public void save(){
}
}
(二)aop(面向切面編程)是對oop(面向?qū)ο缶幊?的補(bǔ)充椒舵,是對各執(zhí)行步驟的劃分约谈。
(三)補(bǔ)充測試類
import org.junit.Test;
@RunWith(BlockJUnit4ClassRunner.class)
public class TestOneInterface extends UnitTestBase{
public TestOneInterface(){
super("classpath*:spring-ioc.xml");
}
@Test
public void test(){
oneInterface oneInterface=super.getBean("oneInterface");
System.out.println(oneinterface.hello("參數(shù)"));
}
}