隨筆-10  評論-23  文章-32  trackbacks-0

          1.1 spring是什么?

           

          (1)Spring是什么

          答:spring是一個開源框架,由Rod Johnson創(chuàng)建。Spring是為了簡化企業(yè)級應(yīng)用開發(fā)應(yīng)運而生的。使用Spring可以用簡單的javaBeans實現(xiàn)那些以前只有在EJB中才可以使用的功能。任何Java應(yīng)用開發(fā)都可以從Spring的簡單、可測試、松耦合特征中獲得益處。

          補:在剛接觸spring的時候,也沒有看過spring官方的英文文檔,我以為spring只有在開發(fā)WEB項目的時候才可以使用,我所了解的全部關(guān)于spring的東西就是,可以使用spring將Struts2和Hibernate整合到一起。

          收獲:spring是一個開源框架,任何Java應(yīng)用程序都可以使用spring,并且從中獲益。

           

          (2)Spring的基本組成部件

          Spring是一個輕量級的DI和AOP容器框架

          基本組成部件如下:

          1)輕量級               從大小和應(yīng)用開支上看為輕量級,并且spring是非侵入式的

          2)依賴注入(DI)      一種松耦合技術(shù),或者稱為“控制反轉(zhuǎn)”。主要思想:對象被動接收依賴類,不主動尋找

          3)面向切面(AOP)    為面向切面編程提供強大支持,目的:分離系統(tǒng)級邏輯功能實現(xiàn)和我們自己的業(yè)務(wù)邏輯實現(xiàn),例如將事務(wù)功能從業(yè)務(wù)邏輯中分離出去

          4)容器                 Spring是一個容器,包含和管理Bean的生命周期和配置。但是Spring是輕量級的

          5)框架                 spring提供了很多基礎(chǔ)功能(如事務(wù),持久層集成,安全)。我們使用Spring可以將簡單的組件配置組成一個復(fù)雜應(yīng)用

          總之:使用Spring可以簡化應(yīng)用程序開發(fā),以及得益于spring松耦合和可測試的優(yōu)點。

           

          (3)Spring由幾個位于Spring核心容器之上的幾個模塊組成,這種模式特性使用戶可以根據(jù)需要靈活使用Spring框架,各個模塊可以選擇使用。

              下圖不是很復(fù)雜,可以幫助我們再比較寬的層次上理解Spring的組成。方便記憶。

              Spring framework

              各個模塊簡單介紹如下:

            1. 核心容器(Core)     為Spring框架提供基礎(chǔ)功能,BeanFactroy在這個模塊定義,是“依賴注入”功能的基礎(chǔ)。
            2. Application Context(Context)      應(yīng)用程序上下文模塊,擴(kuò)展自BeanFactory,添加了I18N國際化,應(yīng)用生命周期事件,驗證支持。另外提供了企業(yè)級的服務(wù)如:電子郵件服務(wù)、JNDI訪問、EJB集成、遠(yuǎn)程調(diào)用、定時服務(wù),支持與其他模板集成。如果BeanFactory是Spring成為容器,ApplicationContext則使spring成為框架。
            3. Spring 的AOP模塊   此模塊對面向切面編程提供強大支持。是spring應(yīng)用開發(fā)切面的基礎(chǔ),此模塊提供多種方法來建立切面,包括基于AOP Alliance接口的切面建立和對AspectJ的支持。
            4. JDBC抽象及DAO模板  spring的jdbc和dao模板把樣板代碼抽象出來,使數(shù)據(jù)庫代碼簡單明了,并且建立了一個容易理解的數(shù)據(jù)庫異常層
            5. ORM映射集成模塊   spring的ORM支持建立在DAO支持之上,spring為許多流行的ORM框架提供了鉤子程序,例如Hibernate,JPA,JDO,Ibatis等
            6. java 管理擴(kuò)展(JMX)   spring的jmx模塊可以方便的展現(xiàn)應(yīng)用Bean,就像JMX Mbeans,從而可以監(jiān)控和重新配置運行中的應(yīng)用程序。
            7. java EE 連接器 API(JCA)   jca提供了一種標(biāo)準(zhǔn)的方法來集成java應(yīng)用和多種企業(yè)信息系統(tǒng),包括主框架和數(shù)據(jù)庫,spring對jca的支持類似于對jdbc的支持,也是抽象樣本代碼到模板中。
            8. spring MVC框架   spring提供了自己的MVC框架,是一個松耦合的基于三層模式的web框架。 
            9. spring portlet MVC 框架   最新的spring版本支持portlet2.0的所有特性。
            10. spring web模塊   spring的web模塊提供了支持spring mvc和spring portlet mvc 的類,還有spring的web模塊提供了對struts和jsf框架的支持。另外此模塊還提供了幾個面向web的任務(wù),例如多部分文件上傳等
            11. 遠(yuǎn)程調(diào)用   當(dāng)通過網(wǎng)絡(luò)來訪問其他應(yīng)用時,某些形式的遠(yuǎn)程調(diào)用將被用于通訊。spring的遠(yuǎn)程調(diào)用模塊會使編寫遠(yuǎn)程對象很簡單,就像使用本地的pojo一樣。spring支持如:rmi,Hessian,Burlap,JAX-RPC,spring自己的HTTP Invoker。
            12. java 消息服務(wù)(jms)   遠(yuǎn)程調(diào)用的下面是取決于網(wǎng)絡(luò)的可靠性和通訊雙方的可用性,基于消息的通訊是可靠的。spring的jms模塊可以將消息發(fā)送到j(luò)ms隊列和主題;可以幫助創(chuàng)建消息驅(qū)動的pojo,能夠處理異步消息。

             總結(jié):spring盡量避免重新開發(fā)所有事情,并傾向于保留現(xiàn)有的API和框架。通過spring可以輕松集成多種框架為一體,并且能夠享受spring帶來的松耦合和可測試特性。

          posted on 2010-04-12 23:09 liuyimx 閱讀(311) 評論(0)  編輯  收藏 所屬分類: 讀書筆記

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 崇州市| 海门市| 西林县| 汉川市| 开平市| 泗阳县| 育儿| 盖州市| 象山县| 临澧县| 宁化县| 大渡口区| 德保县| 瑞昌市| 临邑县| 绍兴市| 大同县| 刚察县| 莱芜市| 东丰县| 肃南| 淅川县| 大宁县| 沂南县| 昭苏县| 乌兰察布市| 健康| 建宁县| 甘孜| 天津市| 密山市| 高要市| 琼海市| 青海省| 太白县| 白银市| 苗栗市| 大埔区| 盐源县| 泸水县| 石首市|