三、spring依賴注入
為什麼使用的spring:
1.**耦合高
2.物件之間依賴關係處理繁瑣
3.事務控制繁瑣
spring是乙個輕量級的di/ioc和aop的容器框架
輕量級:簡單好用,通常來說功能不強大(但spring功能強大)
di(依賴注入):動態的向某個物件提供它所需要的其他物件,也可以為物件的屬性字段賦值。(依賴注入又分為xml注入和註解注入)
ioc(控制翻轉):由spring控制物件的生命週期(建立,銷毀)
aop(面向切面程式設計):解決重複**。將相同的邏輯抽取出來,即將業務邏輯從應用服務中分離出來。然後以攔截的方式作用在乙個方法的不同位置。
導包的時候注意,現在使用spring,要完成最小導包,即:需要什麼jar包,我們就匯入什麼jar包,用到了其他功能,再新增相應jar包。這個對認識框架的包是非常有幫助的:
方式一:通過id直接拿到相應的bean物件
//通過xml中配置的id拿到物件
mybean bean =
(mybean)factory.
getbean
("mybean");
system.out.
println
(bean)
;
//通過id與物件的class拿到bean物件
mybean bean = factory.
getbean
("mybean"
,mybean.
class);
system.out.
println
(bean)
;
顧名思義:在xml中進行配置,但是這種方式必須有對應的setter方法,所有這種注入方式又稱之為屬性注入或setter方法注入
public
class
mybean
public
void
setotherbean
(otherbean otherbean)
}
public
class
otherbean
}
//xml配置:
"otherbean"
class
="cn.itsource.bean.otherbean"
>
bean
>
"mybean"
class
="cn.itsource.bean.mybean"
>
name
="otherbean"
ref="otherbean"
>
property
>
bean
>
顧名思義:通過註解實現注入,這種方式可以將註解寫在setter方法上,也可以寫在字段上,如果寫在字段上可以不需要setter方法
@autowired為spring提供的註解
public
class
mybean
}public
class
otherbean
}
//xml配置:
"otherbean"
class
="cn.itsource.bean.otherbean"
>
bean
>
"mybean"
class
="cn.itsource.bean.mybean"
>
bean
>
public
class
mybean
}public
class
otherbean
}
@autowired:預設型別匹配再按照名字匹配
@resource:預設按照名字匹配然後按照型別匹配
spring簡單入門示例
控制反轉意思就是說,當我們呼叫乙個方法或者類時,不再有我們主動去建立這個類的物件,控制權交給別人 spring 依賴注入意思就是說,spring主動建立被呼叫類的物件,然後把這個物件注入到我們自己的類中,使得我們可以使用它。舉個簡單的例子,程式猿加班了乙個月,很累,想要放鬆下,於是去找人吃 麻辣燙 ...
spring簡單入門示例
控制反轉意思就是說,當我們呼叫乙個方法或者類時,不再有我們主動去建立這個類的物件,控制權交給別人 spring 依賴注入意思就是說,spring主動建立被呼叫類的物件,然後把這個物件注入到我們自己的類中,使得我們可以使用它。舉個簡單的例子,程式猿加班了乙個月,很累,想要放鬆下,於是去找人吃 麻辣燙 ...
spring簡單入門示例
1 控制反轉ioc 依賴注入di,因為翻譯的不同,因此有兩個名字。控制反轉意思就是說,當我們呼叫乙個方法或者類時,不再有我們主動去建立這個類的物件,控制權交給別人 spring 依賴注入意思就是說,spring主動建立被呼叫類的物件,然後把這個物件注入到我們自己的類中,使得我們可以使用它。舉個簡單的...