Spring的架構性的好處
Spring能有效地組織你的中間層對象,無論你是否選擇使用了EJB。如果你僅僅使用了Struts或其他的包含了Java EE特有APIs的framework,你會發(fā)現(xiàn)Spring關注了遺留下的問題。
Spring能消除在許多工程上對Singleton的過多使用。根據(jù)我的經(jīng)驗,這是一個主要的問題,它減少了系統(tǒng)的可測試性和面向?qū)ο筇匦浴?/P>
Spring 能消除使用各種各樣格式的屬性定制文件的需要,在整個應用和工程中,可通過一種一致的方法來進行配置。曾經(jīng)感到迷惑,一個特定類要查找迷幻般的屬性關鍵字或系統(tǒng)屬性,為此不得不讀Javadoc乃至源編碼嗎?有了Spring,你可很簡單地看到類的JavaBean屬性。倒置控制的使用(在下面討論)幫助完成這種簡化。Spring能通過接口而不是類促進好的編程習慣,減少編程代價到幾乎為零。
Spring被設計為讓使用它創(chuàng)建的應用盡可能少的依賴于他的APIs。在Spring應用中的大多數(shù)業(yè)務對象沒有依賴于Spring。
使用Spring構建的應用程序易于單元測試。
Spring能使EJB的使用成為一個實現(xiàn)選擇,而不是應用架構的必然選擇。你能選擇用POJOs或local EJBs來實現(xiàn)業(yè)務接口,卻不會影響調(diào)用代碼。
Spring幫助你解決許多問題而無需使用EJB。Spring能提供一種EJB的替換物,它們適于許多web應用。例如,Spring能使用AOP提供聲明性事務而不通過使用EJB容器,如果你僅僅需要與單個的數(shù)據(jù)庫打交道,甚至不需要JTA實現(xiàn)。
Spring為數(shù)據(jù)存取提供了一致的框架,不論是使用JDBC或O/R mapping產(chǎn)品(如Hibernate)。
Spring確實使你能通過最簡單可行的解決辦法解決你的問題。這些特性是有很大價值的。
Spring能做什么?
Spring提供許多功能,在此我將快速地依次展示其各個主要方面。
任務描述:
首先,讓我們明確Spring范圍。盡管Spring覆蓋了許多方面,但我們已經(jīng)有清楚的概念,它什么應該涉及和什么不應該涉及。
相關推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |