<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-72  評論-20  文章-0  trackbacks-1

    Spring 的核心是個輕量級容器(container),實現了IoC(Inversion of Control)模式的容器。Spring的目標是實現一個全方位的整合框架,在Spring框架下實現多個子框架的組合,這些子框架之間彼此可以獨立,也可以使用其它的框架方案加以替代,Spring希望提供一站式的框架整合方案。在某些情況下,利用Spring可以不必考慮設計模式。因為Spring 其實就是遵從了J2EE的設計模式。

    Spring框架具有以下特點:

    1.         面向接口的編程。面向接口的編程使開發者事先知道他們將利用對象的方法。在設計應用時利用接口對我們獲取實現的靈活性大有幫助。同時,利用接口使得各層之間的交互耦合性更為松散。

    2.         測試更為容易。利用測試驅動開發是快速開發高質量代碼的最佳途徑。它利用在編寫接口和實現之前先編寫客戶類(測試類)來驅動設計。諸如Eclipse這樣的主流IDE都允許在實現測試類的同時創建類和方法。Spring使得測試更加容易有如下兩個原因:1)可以在Junit測試用例中很容易的加載和利用 Spring管理的beans。這使得我們可以像平常一樣用任何客戶端與這些beans交互。2)類之間沒有綁定自己的依賴。這樣在測試類中可以忽略 Spring,只用設置模擬對象(mock objects)來處理依賴關系即可。

    3.         減少耦合。為了創建一個容易維護和擴展的應用,將代碼與特定的資源(例如,可能使用了針對于某個特定數據庫的SQL函數)緊密耦合是不明智的。當然,如果有合適的函數可以迅速的實現功能時,針對于某個特定數據庫通常是比較容易的。這種情況下,J2EE設計模式通常建議使用工廠模式來減少實現類與應用之間的耦合。

    4.         配置和綁定類之間的依賴關系。工廠模式使得我們可以輕松的從一個實現類切換到另一個實現類。接口和實現都可以配置在XML文件中并且可以方便的通過改變文件來改變實現類。

    5.         支持對象/關系映射的工具。利用支持ORM類的優點就是我們不再需要寫繁多的try/catch語句來捕獲API拋出的異常。Spring將這些異常封裝成為運行時的異常(runtime exceptions),這樣使得開發者可以在適當的時候捕獲發異常。

    使用Spring的優點:

    1.         Spring能消除在許多工程上對Singleton的過多使用。

    2.         Spring 能消除使用各種各樣格式的屬性定制文件的需要,在整個應用和工程中,可通過一種一致的方法來進行配置。

    3.         Spring能通過接口而不是類促進好的編程習慣,減少編程代價到幾乎為零。

    4.         Spring被設計為讓使用它創建的應用盡可能少的依賴于他的APIs。在Spring

    5.         應用中的大多數業務對象沒有依賴于Spring。

    6.         使用Spring構建的應用程序易于單元測試。

    7.         Spring為數據存取提供了一致的框架,不論是使用JDBC或O/R mapping產品(如Hibernate)。

    Spring 的上述優點,使得Spring 框架成為構建信息發布系統模型層的首選框架。在本課題的實現過程中,使用了Spring管理的Bean,大大減少了代碼的編寫量的同時,代碼質量也有很大的保證。面向接口的編程模式,使得測試同一個接口的不同實現變得容易,只需要簡單的修改Spring的配置文件,極大地減少了編寫測試代碼的量。 Spring的代理模式和面向方面編程的能力,使得攔截一個方法調用并在調用之前或者之后執行特定的操作變得簡單。課題實現過程中的粗話過濾利用了 Spring中面向方面的編程能力攔截信息插入操作,在插入操作執行之前進行粗話查詢和替換,從而實現了粗話過濾。在信息插入操作執行之后進行攔截,給相關的人員發送E-mail,以便于通知有事件發生。Spring中支持事務管理,同樣使用了攔截器模式,插入或者查詢操作執行過程中使用事務,保證了數據庫操作代碼的安全性,Spring中可以使用聲明式的事務管理。對事務的所有操作都在配置文件中進行配置,無須硬編碼到Java代碼中,使得底層的數據庫操作實現類只專注于正常情況下的數據庫的操作,其他的事情完全由Spring代理,降低了代碼編寫的難度和復雜度,并提高了代碼質量。


    posted on 2007-08-19 14:42 前方的路 閱讀(371) 評論(0)  編輯  收藏 所屬分類: 軟件架構
    主站蜘蛛池模板: 国产精品99精品久久免费| 白白国产永久免费视频| 亚洲中文字幕无码爆乳av中文| 亚洲人成激情在线播放| 国产午夜精品理论片免费观看 | 日韩电影免费在线观看视频| 亚洲AV日韩AV永久无码久久| 免费无码婬片aaa直播表情| 国产成人无码免费看视频软件| 亚洲美女又黄又爽在线观看| 国产亚洲精品AAAA片APP| 69天堂人成无码麻豆免费视频| 国产亚洲3p无码一区二区| 理论片在线观看免费| 日韩一区二区a片免费观看| 亚洲v高清理论电影| 精品国产免费一区二区三区| 国产特级淫片免费看| 亚洲一卡2卡3卡4卡乱码 在线| 午夜网站在线观看免费完整高清观看 | 中文字幕亚洲综合久久2| 你是我的城池营垒免费看| 亚洲国产成人久久综合碰| 亚洲国产欧美国产综合一区| 我的小后妈韩剧在线看免费高清版| 亚洲AV无码一区二区二三区入口| 一个人免费观看日本www视频| 国产一区二区三区在线观看免费| 亚洲日韩一区精品射精| 国产91免费在线观看| 亚洲日本国产精华液| 日本黄色动图免费在线观看| 亚洲综合精品香蕉久久网| 精品一区二区三区高清免费观看 | 大陆一级毛片免费视频观看| 亚洲AV无码一区二区三区在线| 中文字幕免费在线| 亚洲人成亚洲精品| 无码国产精品一区二区免费16 | 亚洲最新黄色网址| 最好看的中文字幕2019免费|