Spring 是一個開源框架,是為瞭解決企業應用程式開發複雜性而創建的。框架的主要優勢之一就是其分層架構,分層架構允許您選擇使用哪一個組件,同時為 J2EE 應用程式開發提供集成的框架 Spring框架 IOC Spring的核心模塊實現了IOC的功能,它將類與類之間的依賴從代碼中脫離出來,用配置的 ...
Spring 是一個開源框架,是為瞭解決企業應用程式開發複雜性而創建的。框架的主要優勢之一就是其分層架構,分層架構允許您選擇使用哪一個組件,同時為 J2EE 應用程式開發提供集成的框架
Spring框架
IOC
Spring的核心模塊實現了IOC的功能,它將類與類之間的依賴從代碼中脫離出來,用配置的方式進行依賴關係描述,由IOC容器負責依賴類之間的創建,拼接,管理,獲取等工作,BeanFactory介面是Spring框架的核心介面,它實現了容器的很多的核心功能。
Context模塊構建與核心模塊之上,擴展了Beanfactory的功能,添加了i18n國際化,Bean生命周期控制、框架事件體系,資源載入透明化等多項功能。此外,該模塊還提供了許多企業級服務的支持,如郵件服務,任務調度,JNDI獲取,EJB集成,遠程訪問等。ApplicationContext是Context模塊的核心介面
表達式語言模塊是統一表達式語言的一個擴展,該表達式語言用於查詢和管理運行期的對象,支持設置/獲取對象屬性,調用對象方法,操作數組、集合等。此外,該模塊還提供了邏輯表達式運算,變數定義等功能,可以方便地童工表達式串和Spring IoC容器進行交互。
AOP
AOP是進行橫切邏輯編程的思想,在AOP模塊里,Spring提供了滿足AOP Alliance 規範的實現,還整合了AspectJ這種AOP語言級的框架。在Spring里實現AOP編程有眾多選擇。可以通過代理類在運行期修改類的位元組碼,改變一個類的功能,從而實現AOPde 功能。
數據訪問和集成
任務應用程式的核心問題是對數據的訪問和操作。數據有多種表現形式,如數據表,XML,消息等,而每種數據形式又擁有不同的數據訪問技術,可以直接通過JDBC或Mybatis直接訪問。
Spring站在DAO的抽象層面,建立了一套面向DAO層的統一異常體系,同時將各種訪問數據的檢查型異常轉換為非檢查型異常,為整合各種持久層框架提供基礎。其次,Spring通過模塊化技術對各種數據訪問技術進行了薄層封裝,將模式化的代碼隱藏起來,使數據訪問的程式得到大幅的簡化。這樣,Spring就建立起了和數據形式及訪問技術無關的統一層DAO,藉助AOP技術,Spring提供了聲明式事務的功能。
Web及遠程操作
該模塊建立在Application Context模塊之上,提供了web應用的各種工具類,如通過Listener或Servlet初始化Spring容器,將Spring容器註冊到Web容器中,該模塊還提供了多項面向Web的功能,如透明化文件上傳、Velocity、FreeMarker、XSLT的支持。Spring可以整合Struts、WebWork等MVC框架
Web及遠程訪問
Spring自己提供了一個完整的類似Struts的MVC框架,稱為Spring MVC。