JAVA各種系統框架圖簡介_第1頁
JAVA各種系統框架圖簡介_第2頁
JAVA各種系統框架圖簡介_第3頁
JAVA各種系統框架圖簡介_第4頁
JAVA各種系統框架圖簡介_第5頁
免費預覽已結束,剩余2頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、JAVA各種系統框架圖簡介I.Spring架構圖Spring是一個開源框架,是為了解決企業應用程序開發復雜性而創建的。框架的主要優勢之一就是其分層架構,分層架構允許您選擇使用哪一個組件,同時為J2EE應用程序開發提供集成的框架。Spring框架的功能可以用在任何J2EE服務器中,大多數功能也適用于不受管理的環境。Spring的核心要點是:支持不綁定到特定J2EE服務的可重用業務和數據訪問對象。這樣的對象可以在不同間重用。J2EE環境(Web或EJB)、獨立應用程序測試環境之SpringAOPSource4ew«lmetadataAOPmfrasilruchireSpringORMHk

2、befMcsupportiBa忤supporlJDOsupportSpringWebW*即帕(MullpartresolverWebutlfbesSpringDAOTransactonintrasliiJGtureJOBCsupportDAOsupportSpringContextApkicaticncomexrUlsupportValidatonJNDLEJBsrdttmodeNnQMailSpringW&bMVCWebMVCFfamftworkW&bJSW日(師PDFIE邛txtSpringORM:Spring框架插入了若干個ORM框架,從而提供了ORM的對象關系工具,其中

3、包括JDO、Hibernate和iBatisSQLMap。所有這些都遵從Spring的通用事務和DAO異常層次結2.ibatis架構圖ibatis是一個基于Java的持久層框架。iBATIS提供的持久層框架包括SQLMaps和DataAccessObjects(DAO),同時還提供一個利用這個框架開發的JPetStore實例。SqIMjpSqlMapConliQ.xmlJDBCMappedSUtementMappedStdtemenlMappedStatement56M卻mlResuilOtecttOntpoi)p«rairt«lefObject(Input)TreeMap

4、,<T>J"Primitive(Integer,StnoQi1SOLMopMappedStJitementMappedSidementiMappedSLJtementMappedStJlemeiilMappedStalemenlMappedStalermniHa,hgp,TreeMap-r.ly'L,Pimutnw(lntegerrtbrfria,.J舊ATIS:最大的優點是可以有效的控制sql發送的數目,提高數據層的執行效率!它需要程序員自己去寫sql語句,不象hibernate那樣是完全面向對象的,自動化的,ibatis是半自動化的,通過表和對象的映射以及手工

5、書寫的sql語句,能句實現比hibernate等更高的查詢效率。Ibatis只是封裝了數據訪問層,替我們做了部分的對象關系映射。但代價是必須要寫xml配置文件、相對于Hibernate還要寫很多sql。Hibernate通過工具直接從數據庫模式生成實體類和基本的配置文件,而且大部分情況下不需要我們寫sql,會較大的提升開發效率。但這些也有很多的局限性,尤其是對環境的要求較高(數據庫設計,對象設計,團隊的協作等)。個人感覺Ibatis對項目比較有意義的地方在于它小巧靈活,可擴展,封裝了數據訪問層(事務,緩存,異常,日志),并提供了DAO框架支持。利用Ibatis我們可以做到代碼和sql的分離,只

6、要sql能夠解決的問題,Ibatis就能幫我們較容易的解決,同時也使我們的項目對某一框架的依賴性變小(因為Ibatis是非侵入性的)。這將極大的降低項目風險,減少解決復雜問題的時間,使項目的維護變得簡單。Ibatis對于應用的修改,調試,擴充和維護將會變得容易自然。修改時,我們主要修改的是代表模型的實體對象,xml配置文件中的sql,和/或配置文件的ResultMap(很多時候是不需要的)。同時,sql和代碼分離,我們不用在代碼的StringBuffer的append方法之間尋找需要修改的sql。配置文件中的sql便利了我們的調試和對sql的評審及以后的sql重用。3.structs1架構圖S

7、truts是Apache基金會Jakarta項目組的一個OpenSource項目,它采用MVC模式,能夠很好地幫助java開發者利用J2EE開發Web應用。和其他的java架構一樣,Struts也是面向對象設計,將MVC模式"分離顯示邏輯和業務邏輯"的能力發揮得淋漓盡致。Structs框架的核心是一個彈性的控制層,基于如JavaServlets,JavaBeans,ResourceBundles與XML等標準技術,以及JakartaCommons的一些類庫。Struts有一組相互協作的類(組件)、Serlvet以及jsptaglib組成。基于struts構架的web應用程序

8、基本上符合JSPModel2的設計標準,可以說是一個傳統MVC設計模式的一種變化類型。Struts有其自己的控制器(Controller),同時整合了其他的一些技術去實現模型層(Model)和視圖層(View)。在模型層,Struts可以很容易的與數據訪問技術相結合,如JDBC/EJB,以及其它第三方類庫,如Hibernate/iBATIS,或者ObjectRelationalBridge(對象關系橋)。在視圖層,Struts能夠與JSP,包括JSTL與JSF,以及Velocity模板,XSLT與其它表示層技術。Struts為每個專業的Web應用程序做背后的支撐,幫助為你的應用創建一個擴展的開

9、發環境。 Clientbrowser(客戶瀏覽器)來自客戶瀏覽器的每個HTTP請求創建一個事件。Web容器將用一個HTTP響應作出響應。 Controller(控制器)控制器接收來自瀏覽器的請求,并決定將這個請求發往何處。就Struts而言,控制器是以servlet實現的一個命令設計模式。struts-config.xml文件配置控制器。 業務邏輯業務邏輯更新模型的狀態,并幫助控制應用程序的流程。就Struts而言,這是通過作為實際業務邏輯“瘦”包裝的Action類完成的。 Model(模型)的狀態模型表示應用程序的狀態。業務對象更新應用程序的狀態。ActionForm.bean在會話級或請求

10、級表示模型的狀態,而不是在持久級。JSP文件使用JSP標記讀取來自ActionForm.bean的信息。 View(視圖)視圖就是一個JSP文件。其中沒有流程邏輯,沒有業務邏輯,也沒有模型信息-只有標記。標記是使Struts有別于其他框架(如Velocity)的因素之一4.structs2架構圖Struts2相對于Struts1.X,將實現用戶業務邏輯(Action)同ServletAPI分離開,這種分離機制,是采用了攔截器或者攔截器棧(攔截器鏈)。攔截器是Struts2的核心內容之一。Struts2內建了多個攔截器和攔截器棧(由多個攔截器形成的攔截器鏈)將用戶的Web請求進行攔截處理,從而提

11、供了更加豐富的功能,例如數據類型轉換、國際化、文件上傳等。HttpServletRequestActlonCantextCleanUpOtherfHters<SlteMesh.etc)FilferOispatcherIntorgpt口rNInterceptor3ActionConfigurationManagerjnwcepwr1,AchonProxyslruts.xmiResultln!*re<pior2InWrspRr1ActionMapporTagSubsystemIHfTIkl-tDVHH4BdE.TemplagHUpServieiResporrsek-Key:Servle

12、lF*Wr回StrutscorerlEofceptorsUEercrsareti5.Hibernate架構圖Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數據庫。Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成數據持久化的重任。|ntcrcq>lMiLscrl>pcScssionFaettwySts*ion1nm

13、Miclton<JiKLryOwittguraliorjHibernate的核心接口一共有5個,分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個核心接口在任何開發中都會用到。通過這些接口,不僅可以對持久化對象進行存取,還能夠進行事務控制。下面對這五個核心接口分別加以介紹。 Session接口:Session接口負責執行被持久化對象的CRUD操作(CRUD的任務是完成與數據庫的交流,包含了很多常見的SQL®句。)。但需要注意的是Session對象是非線程安全的。同時,Hibernate的session不同

14、于JSP應用中的HttpSession。這里當使用session這個術語時,其實指的是Hibernate中的session,而以后會將HttpSesion對象稱為用戶session。 SessionFactory接口:SessionFactory接口負責初始化Hibernate。它充當數據存儲源的代理,并負責創建Session對象。這里用到了工廠模式。需要注意的是SessionFactory并不是輕量級的,因為一般情況下,一個項目通常只需要一個SessionFactory就夠,當需要操作多個數據庫時,可以為每個數據庫指定一個SessionFactory。 Configuration接口:Con

15、figuration接口負責配置并啟動Hibernate,倉建SessionFactory對象。在Hibernate的啟動的過程中,Configuration類的實例首先定位映射文檔位置、讀取配置,然后創建SessionFactory對象。 Transaction接口:Transaction接口負責事務相關的操作。它是可選的,開發人員也可以設計編寫自己的底層事務處理代碼。 Query和Criteria接口:Query和Criteria接口負責執行各種數據庫查詢。它可以使用HQL語言或SQL語句兩種表達方式。6.J2EE架構圖J2EE是一套全然不同于傳統應用開發的技術架構,包含許多組件,主要可簡

16、化且規范應用系統的開發與部署,進而提高可移植性、安全與再用價值。J2EE核心是一組技術規范與指南,其中所包含的各類組件、服務架構及技術層次,均有共通的標準及規格,讓各種依循J2EE架構的不同平臺之間,存在良好的兼容性,解決過去企業后端使用的信息產品彼此之間無法兼容,導致企業內部或外部難以互通的窘境。RMU1I0PJNOI+ex?JMSHTMLServlet'1rvwvrikri同ir57StetdulSasiionBeanEntityVk_HTTPEJBHcjticEJBHofneSlatefuESessionBeanStatelessSmionBe»nStatel«

17、;et乙_jSeuionHun:EntityV.Bun,7.Oracle架構圖OverviewofPrimaryComponentsUserprocessInstanceSharedpoolSGALibrarycacheDataDietcacheDatabasebuffeFcacheRedologbuffercachePMONSMONDBWRLGWRCKPTOthersIISpringCortSupportngLiUrbcBeanconLainef組成Spring框架的每個模塊(或組件)都可以單獨存在,或者與其他一個或多個模塊聯合實現。每個模塊的功能如下:核心容器:核心容器提供Spring框架的基本功能。核心容器的主要組件是BeanFactory,它是工廠模式的實現。BeanFactory使用控制反轉(IOC)模式將應用程序的配置和依賴性規范與實際的應用程序代碼分開。Spring上下文:Spring上下文是一個配置文件,向Spring框架提供上下文信息。Spring上下文包括企業服務,例如JNDI、EJB、電子郵件、國際化、校驗和調度功能。SpringAOP:通過配置管理特性,SpringAOP模塊直接將面

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論