反向控制:協(xié)調(diào)以來對象之間合作的責(zé)任從對象自身中轉(zhuǎn)移出來,這就是像Spring這樣的輕量級框架所起的作用。
創(chuàng)建系統(tǒng)組件之間關(guān)聯(lián)的動作叫做裝配。在Spring應(yīng)用系統(tǒng)中,BeanFactory負(fù)責(zé)裝載Bean的定義并把它們裝配起來。
IOC使軟件組件松散連接成為可能,AOP讓你能夠捕捉系統(tǒng)中經(jīng)常使用的功能,把它轉(zhuǎn)化為組件。
系統(tǒng)由很多組件組成,每個組件負(fù)責(zé)一部分功能,然而,這些組件也經(jīng)常帶有一些除了核心功能之外的附帶功能。系統(tǒng)服務(wù)如日志、事務(wù)管理和安全經(jīng)常融入到一些其他功能模塊中。這些系統(tǒng)服務(wù)通常叫做交叉業(yè)務(wù),這是因為它們總是分布在系統(tǒng)的很多組件中。通過將這些業(yè)務(wù)分布在多個組件中,給你的代碼引入了雙重復(fù)雜性。
ProxyFactoryBean當(dāng)需要容器提供一個對象時,它返回一個針對這個對象所有調(diào)用的攔截器對象,在調(diào)用目標(biāo)對象方法之前給AOP對象一個先執(zhí)行的機(jī)會。AOP對象執(zhí)行完畢后,控制權(quán)轉(zhuǎn)回給這個對象,由它執(zhí)行自己的任務(wù)。
盡管Spring的AOP支持可以被用于從系統(tǒng)核心羅集中分離交叉任務(wù),但是它的主要任務(wù)是作為Spring對聲明式事務(wù)支持的基礎(chǔ),Spring帶有很多為JavaBean提供聲明式事務(wù)策略的切面。Acegi安全系統(tǒng)為JavaBean提供了聲明式安全服務(wù)。
posted on 2009-10-14 10:48
王永慶 閱讀(193)
評論(0) 編輯 收藏 所屬分類:
SPRING