日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
詳細(xì)介紹Spring的核心

Spring的核心是個(gè)輕量級容器(container),實(shí)現(xiàn)了IoC(Inversion of Control)模式的容器,Spring的目標(biāo)是實(shí)現(xiàn)一個(gè)全方位的整合框架,在Spring框架下實(shí)現(xiàn)多個(gè)子框架的組合,這些子框架之間彼此可以獨(dú)立,也可以使用其它的框架方案加以替代,Spring希望提供one-stop shop的框架整合方案 。

創(chuàng)新互聯(lián)長期為成百上千客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為竹山企業(yè)提供專業(yè)的成都做網(wǎng)站、成都網(wǎng)站建設(shè),竹山網(wǎng)站改版等技術(shù)服務(wù)。擁有十余年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

Spring不會特別去提出一些子框架來與現(xiàn)有的OpenSource框架競爭,除非它覺得所提出的框架夠新夠好,例如Spring有自己的 MVC框架方案,因?yàn)樗X得現(xiàn)有的MVC方案有很多可以改進(jìn)的地方,但它不強(qiáng)迫您使用它提供的方案,您可以選用您所希望的框架來取代其子框架,例如您仍可以在Spring中整合您的Struts框架 。

Spring的核心概念是IoC,IoC的抽象概念是「依賴關(guān)系的轉(zhuǎn)移」,像是「高層模組不應(yīng)該依賴低層模組,而是模組都必須依賴于抽象」是 IoC的一種表現(xiàn),「實(shí)現(xiàn)必須依賴抽象,而不是抽象依賴實(shí)現(xiàn)」也是IoC的一種表現(xiàn),「應(yīng)用程序不應(yīng)依賴于容器,而是容器服務(wù)于應(yīng)用程序」也是IoC的一種表現(xiàn)。

Spring簡介

關(guān)于Spring Framework,今年夏天你可能已經(jīng)聽見很多的議論。在本文中,我將試圖解釋Spring能完成什么,和我怎么會認(rèn)為它能幫助你開發(fā)J2EE應(yīng)用程序。

另一framework,你可能正在想“不過是另外一個(gè)的framework”。當(dāng)已經(jīng)有許多開放源代碼(和專有) J2EE framework時(shí),為什么你應(yīng)該費(fèi)心讀這篇文章,或下載Spring Framework?

我相信Spring是獨(dú)特的,因?yàn)槿舾蓚€(gè)原因:  它定位的領(lǐng)域是許多其他流行的framework沒有的。Spring關(guān)注提供一種方法管理你的業(yè)務(wù)對象。
Spring是全面的和模塊化的。Spring有分層的體系結(jié)構(gòu),這意味著你能選擇使用它孤立的任何部分,它的架構(gòu)仍然是內(nèi)在穩(wěn)定的。因此從你的學(xué)習(xí)中,你可得到最大的價(jià)值。例如,你可能選擇僅僅使用Spring來簡單化JDBC的使用,或用來管理所有的業(yè)務(wù)對象。  它的設(shè)計(jì)從底部幫助你編寫易于測試的代碼。Spring是用于測試驅(qū)動工程的理想的framework。Spring對你的工程來說,它不需要一個(gè)以上的framework。

Spring是潛在地一站式解決方案,定位于與典型應(yīng)用相關(guān)的大部分基礎(chǔ)結(jié)構(gòu)。它也涉及到其他framework沒有考慮到的內(nèi)容。盡管它僅僅是一個(gè)從2003年2月才開始的開源工程,但Spring有較長的歷史根基。這個(gè)開源工程是起源自我在2002年后期出版的《Expert One-on-One J2EE設(shè)計(jì)與開發(fā)》書中的基礎(chǔ)代碼。這本書展示了Spring背后的基礎(chǔ)架構(gòu)。然而,這個(gè)基礎(chǔ)架構(gòu)的概念要追溯到2000年的早些時(shí)候,并且反映了我為一系列成功的商業(yè)工程開發(fā)基礎(chǔ)結(jié)構(gòu)的經(jīng)驗(yàn)。從2003年1月,Spring已經(jīng)落戶于SourceForge上。現(xiàn)在有10個(gè)開發(fā)人員,其中6是高度投入的積極分子。

Spring的架構(gòu)性的好處
◆Spring能有效地組織你的中間層對象,無論你是否選擇使用了EJB。如果你僅僅使用了Struts或其他的包含了J2EE特有APIs的framework,你會發(fā)現(xiàn)Spring關(guān)注了遺留下的問題。
◆Spring能消除在許多工程上對Singleton的過多使用。根據(jù)我的經(jīng)驗(yàn),這是一個(gè)主要的問題,它減少了系統(tǒng)的可測試性和面向?qū)ο筇匦浴?br />◆Spring 能消除使用各種各樣格式的屬性定制文件的需要,在整個(gè)應(yīng)用和工程中,可通過一種一致的方法來進(jìn)行配置。曾經(jīng)感到迷惑,一個(gè)特定類要查找迷幻般的屬性關(guān)鍵字或系統(tǒng)屬性,為此不得不讀Javadoc乃至源編碼嗎?有了Spring,你可很簡單地看到類的JavaBean屬性。倒置控制的使用(在下面討論)幫助完成這種簡化。   Spring能通過接口而不是類促進(jìn)好的編程習(xí)慣,減少編程代價(jià)到幾乎為零。
◆Spring被設(shè)計(jì)為讓使用它創(chuàng)建的應(yīng)用盡可能少的依賴于他的APIs。在Spring應(yīng)用中的大多數(shù)業(yè)務(wù)對象沒有依賴于Spring。
◆使用Spring構(gòu)建的應(yīng)用程序易于單元測試。
◆Spring能使EJB的使用成為一個(gè)實(shí)現(xiàn)選擇,而不是應(yīng)用架構(gòu)的必然選擇。你能選擇用POJOs或local EJBs來實(shí)現(xiàn)業(yè)務(wù)接口,卻不會影響調(diào)用代碼。
◆Spring幫助你解決許多問題而無需使用EJB。Spring能提供一種EJB的替換物,它們適于許多web應(yīng)用。例如,Spring能使用AOP提供聲明性事務(wù)而不通過使用EJB容器,如果你僅僅需要與單個(gè)的數(shù)據(jù)庫打交道,甚至不需要JTA實(shí)現(xiàn)。
◆Spring為數(shù)據(jù)存取提供了一致的框架,不論是使用JDBC或O/R mapping產(chǎn)品(如Hibernate)。
◆Spring確實(shí)使你能通過最簡單可行的解決辦法解決你的問題。這些特性是有很大價(jià)值的。

Spring能做什么

Spring提供許多功能,在此我將快速地依次展示其各個(gè)主要方面。首先,讓我們明確Spring范圍。盡管Spring覆蓋了許多方面,但我們已經(jīng)有清楚的概念,它什么應(yīng)該涉及和什么不應(yīng)該涉及。

Spring的主要目的是使J2EE易用和促進(jìn)好編程習(xí)慣。
Spring不重新開發(fā)已有的東西。因此,在Spring中你將發(fā)現(xiàn)沒有日志記錄的包,沒有連接池,沒有分布事務(wù)調(diào)度。這些均有開源項(xiàng)目提供(例如 Commons Logging 用來做所有的日志輸出,或Commons DBCP用來作數(shù)據(jù)連接池),或由你的應(yīng)用程序服務(wù)器提供。因?yàn)橥瑯拥牡脑?,我們沒有提供O/R mapping層,對此,已有有好的解決辦法如Hibernate和JDO。

Spring的目標(biāo)是使已存在的技術(shù)更加易用。例如,盡管我們沒有底層事務(wù)協(xié)調(diào)處理,但我們提供了一個(gè)抽象層覆蓋了JTA或任何其他的事務(wù)策略。

Spring 沒有直接和其他的開源項(xiàng)目競爭,除非我們感到我們能提供新的一些東西。例如,象許多開發(fā)人員,我們從來沒有為Struts高興過,并且感到在MVC web framework中還有改進(jìn)的余地。在某些領(lǐng)域,例如輕量級的 IoC容器和AOP框架,Spring有直接的競爭,但是在這些領(lǐng)域還沒有已經(jīng)較為流行的解決方案。(Spring在這些區(qū)域是開路先鋒。)

Spring也得益于內(nèi)在的一致性。
所有的開發(fā)者都在唱同樣的的贊歌,基礎(chǔ)想法依然是Expert One-on-One J2EE設(shè)計(jì)與開發(fā)的那些。
并且我們已經(jīng)能夠使用一些主要的概念,例如倒置控制,來處理多個(gè)領(lǐng)域。

Spring在應(yīng)用服務(wù)器之間是可移植的。
當(dāng)然保證可移植性總是一次挑戰(zhàn),但是我們避免任何特定平臺或非標(biāo)準(zhǔn)化,并且支持在WebLogic,Tomcat,Resin,JBoss,WebSphere和其他的應(yīng)用服務(wù)器上的用戶。

Spring的核心即是個(gè)IoC/DI的容器,它可以幫程序設(shè)計(jì)人員完成組件之間的依賴關(guān)系注入,使得組件之間的依賴達(dá)到最小,進(jìn)而提高組件的重用性,Spring是個(gè)低侵入性(invasive)的框架,Spring中的組件并不會意識到它正置身于Spring中,這使得組件可以輕易的從框架中脫離,而幾乎不用任何的修改,反過來說,組件也可以簡單的方式加入至框架中,使得組件甚至框架的整合變得容易。

Spring最為人重視的另一方面是支持 AOP(Aspect-Oriented Programming),然而AOP框架只是Spring支持的一個(gè)子框架,說Spring框架是AOP框架并不是一件適當(dāng)?shù)拿枋?,人們對于新奇?AOP關(guān)注映射至Spring上,使得人們對于Spring的關(guān)注集中在它的AOP框架上,雖然有所誤解,但也突顯了Spring的另一個(gè)令人關(guān)注的特色。

Spring也提供MVC Web框架的解決方案,但您也可以將自己所熟悉的MVC Web框架與Spring解合,像是Struts、Webwork等等,都可以與Spring整合而成為進(jìn)用于自己的解決方案。Spring也提供其它方面的整合,像是持久層的整合如JDBC、O/R Mapping工具(Hibernate、iBATIS)、事務(wù)處理等等,Spring作了對多方面整合的努力,故說Spring是個(gè)全方位的應(yīng)用程序框架。

想要入門Spring,對于IoC/DI的了解是必要的。如果您想了解Spring的整體概念,可以看看Expert One on one J2EE Development Without EJB這本書,Spring的前身是由該作者的前一本書Expert One on one J2EE Design and Development中的一個(gè)實(shí)際程序開始,Spring本身是J2EE的一個(gè)輕量級容器解決方案,從這本書了解J2EE程序設(shè)計(jì)的考慮也是個(gè)不錯的基礎(chǔ)建構(gòu)方式。對于Expert One on one J2EE Development Without EJB這本書,如果您想了解Spring,可以看chapter 7、chapter 13。


文章題目:詳細(xì)介紹Spring的核心
瀏覽路徑:http://www.5511xx.com/article/cdcijgc.html