成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

J2EE領域的一些技術框架結構圖

開發 后端
Spring 是一個開源 框架,是為了解決企業應用程序開發復雜性而創建的。框架的主要優勢之一就是其分層架構,分層架構允許您選擇使用哪一個組件,同時為J2EE 應用程序開發提供集成的框架。

1.Spring 架構圖

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

組成Spring 框架的每個模塊(或組件)都可以單獨存在,或者與其他一個或多個模塊聯合實現。每個模塊的功能如下:

核心容器:核心容器提供Spring 框架的基本功能。核心容器的主要組件是BeanFactory ,它是工廠模式的實現。BeanFactory 使用控制反轉 (IOC ) 模式將應用程序的配置和依賴性規范與實際的應用程序代碼分開。
Spring 上下文:Spring 上下文是一個配置文件,向Spring 框架提供上下文信息。Spring 上下文包括企業服務,例如JNDI 、EJB、電子郵件、國際化、校驗和調度功能。
Spring AOP : 通過配置管理特性,Spring AOP 模塊直接將面向方面的編程功能集成到了Spring 框架中。所以,可以很容易地使Spring 框架管理的任何對象支持AOP 。Spring AOP 模塊為基于Spring 的應用程序中的對象提供了事務管理服務。通過使用Spring AOP ,不用依賴EJB 組件,就可以將聲明性事務管理集成到應用程序中。
Spring DAO :JDBC DAO 抽象層提供了有意義的異常層次結構,可用該結構來管理異常處理和不同數據庫供應商拋出的錯誤消息。異常層次結構簡化了錯誤處理,并且極大地降低了需要編寫 的異常代碼數量(例如打開和關閉連接)。Spring DAO 的面向JDBC 的異常遵從通用的DAO 異常層次結構。
Spring ORM :Spring 框架插入了若干個ORM 框架,從而提供了ORM 的對象關系工具,其中包括JDO 、Hibernate 和iBatisSQLMap 。所有這些都遵從Spring 的通用事務和DAO 異常層次結構。

2.ibatis 架構圖

ibatis 是一個基于 Java 的持久層框架。 iBATIS 提供的持久層框架包括 SQL Maps 和DataAccess Objects ( DAO ),同時還提供一個利用這個框架開發的 JPetStore 實例。

 

IBATIS :***的優點是可以有效的控制sql 發送的數目,提高數據層的執行效率!它需要程序員自己去寫sql 語句,不象hibernate那樣是完全面向對象的,自動化的,ibatis 是半自動化的,通過表和對象的映射以及手工書寫的sql 語句,能夠實現比hibernate 等更高的查詢效率。

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

利用Ibatis 我們可以做到代碼和sql 的分離,只要sql 能夠解決的問題,Ibatis 就能幫我們較容易的解決,同時也使我們的項目對某一框架的依賴性變小(因為Ibatis 是非侵入性的)。這將極大的降低項目風險,減少解決復雜問題的時間,使項目的維護變得簡單。

Ibatis 對于應用的修改,調試,擴充和維護將會變得容易自然。修改時,我們主要修改的是代表模型的實體對象,xml 配置文件中的sql ,和/ 或配置文件的ResultMap (很多時候是不需要的)。同時,sql 和代碼分離,我們不用在代碼的StringBuffer 的append 方法之間尋找需要修改的sql 。配置文件中的sql 便利了我們的調試和對sql 的評審及以后的sql 重用。

3.struts1 架構圖

Struts 是Apache 基金會Jakarta 項目組的一個Open Source 項目,它采用MVC 模式,能夠很好地幫助java 開發者利用J2EE 開發Web 應用。和其他的java 架構一樣,Struts 也是面向對象設計,將MVC 模式" 分離顯示邏輯和業務邏輯" 的能力發揮得***。Structs 框架的核心是一個彈性的控制層,基于如Java Servlets ,JavaBeans ,ResourceBundles 與XML 等標準技術,以及Jakarta Commons 的一些類庫。Struts 有一組相互協作的類(組件)、Serlvet 以及jsptag lib 組成。基于struts 構架的web 應用程序基本上符合JSP Model2 的設計標準,可以說是一個傳統MVC 設計模式的一種變化類型。

Struts 有其自己的控制器(Controller ),同時整合了其他的一些技術去實現模型層(Model )和視圖層(View )。在模型層,Struts 可以很容易的與數據訪問技術相結合,如JDBC / EJB ,以及其它第三方類庫,如Hibernate / iBATIS ,或者Object Relational Bridge( 對象關系橋) 。在視圖層,Struts 能夠與JSP ,包括JSTL 與JSF ,以及Velocity 模板,XSLT 與其它表示層技術。

Struts 為每個專業的Web 應用程序做背后的支撐,幫助為你的應用創建一個擴展的開發環境。

Client browser (客戶瀏覽器):

來自客戶瀏覽器的每個HTTP 請求創建一個事件。Web 容器將返回一個HTTP Response。

Controller (控制器):

控制器接收來自瀏覽器的請求,并決定將這個請求發往何處。就Struts 而言,控制器是以servlet 實現的一個命令設計模式。struts-config.xml 文件配置控制器。

Logic 業務邏輯:

業務邏輯更新模型的狀態,并幫助控制應用程序的流程。就Struts 而言,這是通過作為實際業務邏輯“ 瘦” 包裝的Action 類完成的。

Model (模型)的狀態:

模型表示應用程序的狀態。業務對象更新應用程序的狀態。ActionForm. bean 在會話級或請求級表示模型的狀態,而不是在持久級。

View (視圖):

視圖就是一個JSP 文件。其中沒有流程邏輯,沒有業務邏輯,也沒有模型信息,只有標記。標記是使Struts區別于其他模板技術(如Velocity)的因素之一。

4.struts2 架構圖

Struts 2 相對于Struts 1.X ,將實現用戶業務邏輯(Action )同Servlet API 分離開,這種分離機制,是采用了攔截器或者攔截器棧(攔截器鏈)。攔截器是Struts 2 的核心內容之一。

Struts 2 內建了多個攔截器和攔截器棧(由多個攔截器形成的攔截器鏈),將用戶的Web 請求進行攔截處理,從而提供了更加豐富的功能,例如數據類型轉換、國際化、文件上傳等。

5.Hibernate 架構圖

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

 

Hibernate 的核心接口一共有5 個,分別為:Session 、SessionFactory、Transaction 、Query和Configuration 。這5 個核心接口在任何開發中都會用到。通過這些接口,不僅可以對持久化對象進行存取,還能夠進行事務控制。下面對這五個核心接口分別加以介紹。

·Session 接口:Session 接口負責執行被持久化對象的CRUD 操作(CRUD 的任務是完成與數據庫的交流,包含了很多常見的SQL語句。) 。但需要注意的是Session 對象是非線程安全的。同時,Hibernate 的session 不同于JSP 應用中的HttpSession 。這里當使用session 這個術語時,其實指的是Hibernate 中的session ,而 以后會將HttpSesion 對象稱為用戶session 。

·SessionFactory 接口:SessionFactory 接口負責初 始化Hibernate 。它充當數據存儲源的代理,并負責創建Session 對象。這里用到了工廠模式。需要注意的是SessionFactory 并不是輕量級的,因為一般情況下,一個項目通常只需要一個SessionFactory 就夠,當需要操作多個數據庫時,可以為每個數據庫指定一個SessionFactory 。

·Configuration 接口:Configuration 接口負責配置并啟動Hibernate ,創建SessionFactory 對象。在Hibernate 的啟動的過程中,Configuration 類的實例首先定位映射文檔位置、讀取配置,然后創建SessionFactory 對象。

·Transaction 接口:Transaction 接口負責事務相關的操作。它是可選的,開發人員也可以設計編寫自己的底層事務處理代碼。

·Query 和Criteria 接口:Query 和Criteria 接口負責執行各種數據庫查詢。它可以使用HQL 語言或SQL 語句兩種表達方式。

6.J2EE 架構圖

J2EE 是一套全然不同于傳統應用開發的技術架構,包含許多組件,主要可簡化且規范應用系統的開發與部署,進而提高可移植性、安全與再用價值。

J2EE 核心是一組技術規范與指南,其中所包含的各類組件、服務架構及技術層次,均有共通的標準及規格,讓各種依循J2EE 架構的不同平臺之間,存在良好的兼容性,解決過去企業后端使用的信息產品彼此之間無法兼容,導致企業內部或外部難以互通的窘境。

 

7.Oracle架構圖

原文鏈接:http://blog.csdn.net/fanxiaoqing/article/details/7348522

【編輯推薦】

  1. 探究Java初始化的過程
  2. Java集合框架的知識總結
  3. Java與F#的并行程序處理對比
  4. Java并發編程之同步互斥問題
  5. Java中String.format的用法
責任編輯:林師授 來源: fanxiaoqing的博客
相關推薦

2009-06-23 15:52:55

J2EE學習開源項目

2011-04-18 17:28:58

J2EE

2009-07-02 13:58:29

JSP和J2EE

2009-06-22 17:38:05

J2EE框架

2009-06-22 17:20:33

J2EE框架

2009-06-18 16:13:14

J2EE開發

2011-11-25 14:59:36

JavaJ2EE框架

2009-06-10 14:10:23

J2EE學習J2EE是什么

2009-06-10 13:37:06

J2EE可伸縮性J2EE靈活性J2EE維護

2009-06-23 08:06:46

J2EE體系架構J2EE模型J2EE設計模式

2010-03-01 10:25:51

J2EE

2009-06-23 16:48:26

J2EE常見問題J2EE平臺

2009-06-11 17:06:11

J2EE歷史Java EE概述

2011-05-20 09:56:15

J2EE

2009-06-19 10:09:00

J2EE開發框架

2012-01-17 10:22:07

JavaJ2EEJBoss

2009-06-22 17:32:25

J2EE平臺

2009-06-11 17:11:07

J2EE設計模式工廠模式

2009-06-22 17:34:40

J2EE架構

2009-06-18 15:54:57

J2EE下使用JNDI
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: www视频在线观看 | 亚洲三级av | 日韩欧美国产综合 | 精品中文字幕在线观看 | 色视频网站免费 | 中文字幕 在线观看 | 亚洲欧美视频一区 | 亚洲一区二区久久 | 久久久久国产一区二区三区 | 久久久久亚洲精品 | 国产丝袜一区二区三区免费视频 | 亚洲视频区 | 国产精品久久久久久婷婷天堂 | 国产精品欧美一区二区三区 | 在线观看av免费 | 免费麻豆视频 | 国产精品久久 | 中文字幕亚洲精品 | 国产一区 | 国产成人一区二区三区 | 久久激情五月丁香伊人 | 婷婷开心激情综合五月天 | 国产精品无码专区在线观看 | 免费永久av | 色资源av| 91一区二区| 国产乱码高清区二区三区在线 | 黄色片免费 | 亚洲免费在线观看 | a级片在线 | 国产污视频在线 | 亚洲成av人片在线观看无码 | 色婷婷av一区二区三区软件 | 免费在线精品视频 | 古典武侠第一页久久777 | 中文字幕日本一区二区 | 精品久久成人 | 欧美日韩看片 | 国产精品美女久久久久aⅴ国产馆 | 男女午夜激情视频 | 国产精品久久久久久吹潮 |