1,,什么是spring框架 spring是J2EE應(yīng)用程序框架,,是輕量級(jí)的IoC和AOP的容器框架,,主要是針對(duì)javaBean的生命周期進(jìn)行管理的輕量級(jí)容器,,可以單獨(dú)使用,,也可以和Struts框架,,ibatis框架等組合使用,。
2,架構(gòu)概述
1)IoC(Inversion of Control)控制反轉(zhuǎn),,對(duì)象創(chuàng)建責(zé)任的反轉(zhuǎn),,在spring中BeanFacotory是IoC容器的核心接口,負(fù)責(zé)實(shí)例化,,定位,,配置應(yīng)用程序中的對(duì)象及建立這些對(duì)象間的依賴。XmlBeanFacotory實(shí)現(xiàn)BeanFactory接口,,通過(guò)獲取xml配置文件數(shù)據(jù),,組成應(yīng)用對(duì)象及對(duì)象間的依賴關(guān)系。 spring中有三種注入方式,,一種是set注入,,一種是接口注入,另一種是構(gòu)造方法注入,。
2)AOP面向切面編程 aop就是縱向的編程,,如下圖所示,業(yè)務(wù)1和業(yè)務(wù)2都需要一個(gè)共同的操作,,與其往每個(gè)業(yè)務(wù)中都添加同樣的代碼,,不如寫(xiě)一遍代碼,讓兩個(gè)業(yè)務(wù)共同使用這段代碼,。 spring中面向切面變成的實(shí)現(xiàn)有兩種方式,,一種是動(dòng)態(tài)代理,一種是CGLIB,,動(dòng)態(tài)代理必須要提供接口,,而CGLIB實(shí)現(xiàn)是有繼承。
3,,為什么使用spring框架 在不使用spring框架之前,,我們的service層中要使用dao層的對(duì)象,不得不在service層中new一個(gè)對(duì)象,。如下:
存在的問(wèn)題:層與層之間的依賴,。 使用框架后:
service層要用dao層對(duì)象需要配置到xml配置文件中,至于對(duì)象是怎么創(chuàng)建的,,關(guān)系是怎么組合的都交給了spring框架去實(shí)現(xiàn),。
4,框架優(yōu)點(diǎn)
5,,缺點(diǎn):業(yè)務(wù)功能依賴spring特有的功能,,依賴與spring環(huán)境。 |
|
來(lái)自: 昵稱(chēng)20874412 > 《Spring》