999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Struts+hibernate框架的研究

2009-03-30 04:52:54
新媒體研究 2009年3期

劉 明

[摘要]要開發現實世界的應用程序,特別是大規模的企業Web應用程序,開發人員必然會發現他們必須創建某種框架。J2EE提供針對Web的基本平臺,在經典的J2EE四層體系結構的基礎上增加數據持久層,提出基于J2EB五層體系結構的web開發框架;分析基于Struts框架的J2EE架構中實現對象持久性的局限性,從中分離出對象持久層,并將Hibernate這個面向對象的輕量級對象持久性技術集成到該架構。

[關鍵詞]struts hibernate web j2EE

中圖分類號:TP3文獻標識碼:A文章編號:1571—7597(2009)0210063-01

一、集成Struts框架與Hibernate框架實現MVC設計模式

Struts作為基于模型視圖控制器模式的應用架構,具有組件的模塊化、靈活性和重用性的優點。但是Struts框架主要是針對表示層設計的,對于后端的業務邏輯層支持不是很強,在進行項目開發中存在以下局限:

1.只能橫向分工,按模塊來劃分工作,軟件開發成本相應較高:

2.需要花很多時間在數據層的包裝以及不同模塊之間進行協調和溝通,導致開發時間的增加:

3.項目移植性相對較差,可能需要為不同數據庫編寫不同的SQL語句;

4.項目擴展性相對較差,適應新的需求或變更時要修改數據庫表結構、重新編寫SOL語句、備份數據庫等,對人員要求也相應較高;

5.由于開發人員數據庫操作水平參差不齊,開發經驗也不盡相同,導致系統性能可能會相對較差。

Hibernate是一個開放源代碼的O/R mapping(對象/關系映射)框架,它對JDBc進行了輕量級的對象封裝,以面向對象機制來處理數據庫操作。Hibernate不僅管理Java類到數據庫表的映射,還提供數據查詢和獲取數據的方法,大幅度減少開發時人工使用SQL和JDBC處理數據的時間。因此可以將Struts中的模型層分成兩部分:一部分負責業務邏輯;另一部分使用Hibernate實現對象持久性處理。同時分離出具體業務邏輯,新建一個業務邏輯層,專門負責用Hibernate來實現業務邏輯和持久性對象的交互。圖3顯示了集成Struts和Hibernate的MVC模型。Struts和Hibernate框架的整合實現了控制流、業務調用、表示這三者的分離,使系統在開發效率、可維護性、可擴展性方面均有良好的改進。

二、集成Struts和Hibe rnate實現J2EE分層架構

根據前面的分析,將Struts與Hibernate框架進行集成,構成了一個新的Web應用的開發框架,實現了J2EE應用系統的多層架構。該框架一方面繼承Struts框架在表示層的優點,提供完善的標記庫,負責頁面請求的接收和轉發,實現了表示邏輯和業務邏輯的分離;另一方面在數據持久層等方面發揮Hibernate框架的特點,由Hibernate框架實現持久層和事務的封裝,使業務邏輯與數據庫訪問分開。這樣有利于開發人員將注意力集中在業務邏輯的實現上,有利于系統的可維護性等。

集成Struts和Hibernate實現J2EE分層架構如圖2所示。系統采用的五層結構設計由客戶層、Web層、業務邏輯層、數據持久層、數據庫層組成。客戶層運行在用戶計算機的Web瀏覽器中;Web層運行在Web服務器中,它使用Struts框架技術實現,提供了接收/響應客戶端請求,控制整個系統工作流程,與業務邏輯層交互以及格式化業務數據并動態生成Web頁面等功能;業務邏輯層負責實現整個系統的核心業務邏輯,由JavaBeans或EJB來實現;數據持久層使用Hibernate框架技術實現,完成對象和關系的映射,負責對數據庫進行操作。

下面根據圖4對系統的各分層功能進行簡單分析:

1.客戶層。它是用戶用瀏覽器看到并直接與系統交互的層,主要是由HTML語言形成的網頁界面。

2.Web層。它從客戶層獲得客戶的輸入,傳遞給業務邏輯層的組件,再將從業務邏輯層獲得的處理結果以HTML文件的形式輸出到客戶端,形成網頁界面。Web層由Servlet和JSP程序組成,封裝在Web容器中。業務流程控制一般均由控制器Servlet來開發,響應用戶的查詢等請求并調用業務邏輯層的JavaBean來實現復雜的商務邏輯。

3.業務邏輯層。處理表示邏輯層傳遞過來的用戶響應,并將結果返回給客戶層。業務邏輯層封裝了系統提供給用戶的接口,是直接處理用戶請求的中心。這一層主要由JavaBean來實現。JavaBean的主要任務是處理商務邏輯,與客戶端交互,返回給它相應的操作結果等。

4.數據持久層。它完成持久對象到關系數據庫的映射,并對持久對象進行操作。業務邏輯模塊由Hibernate通過O/R映射文件實現對具體數據源的操作(即穿過持久層映射到具體的某個數據表),完成對數據庫的操作。對于小型的項目來說,這種實現確實是很高效且低成本的。

5.數據庫層。對象持久性的具體實現,可以是關系數據庫管理系統、文件存儲和對象數據庫存儲管理系統。

三、結束語

本文在傳統的J2EE框架中引入面向對象機制的數據持久層,使業務邏輯處理層有效地分離和隱藏了數據讀取和操縱中的所有數據訪問代碼細節,將客戶應用程序和底層存儲機制隔離開,完全抽象出開發應用程序時使用的數據物理細節,構建了更為有效的松耦合多層次web開發模型。

作者簡介:

劉明,女,漢族,遼寧省朝陽市人,大連交通大學軟件工程在讀碩士,朝陽師范高等專科學校數計系助教,研究方向:javaweb開發。

主站蜘蛛池模板: 欧美啪啪网| 97无码免费人妻超级碰碰碰| 看看一级毛片| 国产欧美视频在线观看| 欧美日韩亚洲综合在线观看| 中国一级毛片免费观看| 亚洲精品视频网| 婷婷综合亚洲| 四虎成人在线视频| 欧美国产日韩在线播放| 亚洲精品国产成人7777| 伊伊人成亚洲综合人网7777| 免费黄色国产视频| 亚洲成人77777| 亚洲中文无码av永久伊人| 亚洲中字无码AV电影在线观看| 国产福利一区二区在线观看| 91蜜芽尤物福利在线观看| 亚洲综合色婷婷中文字幕| 久久精品波多野结衣| 色哟哟国产成人精品| 日本中文字幕久久网站| 99久久国产精品无码| 丁香六月综合网| 日韩一级毛一欧美一国产| a级毛片在线免费| 久久人人97超碰人人澡爱香蕉 | 欧美精品一区二区三区中文字幕| 色婷婷在线影院| 伊人中文网| 色亚洲激情综合精品无码视频| 中文字幕av一区二区三区欲色| 91在线播放免费不卡无毒| 19国产精品麻豆免费观看| 精品久久久无码专区中文字幕| 色AV色 综合网站| 亚洲无码在线午夜电影| 在线看AV天堂| 国内精品视频在线| 欧美区国产区| 91精品国产麻豆国产自产在线| 亚洲人成网站观看在线观看| 992Tv视频国产精品| 亚洲日本韩在线观看| 亚洲欧美另类日本| 亚洲欧美日韩中文字幕在线| 99视频在线观看免费| 嫩草国产在线| 无码国产偷倩在线播放老年人| 久久精品视频一| 波多野结衣中文字幕一区二区 | 日韩精品高清自在线| 国产福利在线观看精品| 亚洲色图欧美激情| 亚洲激情99| 国产国产人成免费视频77777| 午夜福利亚洲精品| 91精品伊人久久大香线蕉| 少妇人妻无码首页| 成人午夜视频在线| 精品久久高清| 亚洲精品成人福利在线电影| 成人午夜天| jizz国产在线| 国产免费自拍视频| 国产一级二级在线观看| 国产激爽爽爽大片在线观看| 国产毛片片精品天天看视频| 国产不卡网| 欧美区一区| 免费人成网站在线观看欧美| 亚洲成人免费看| 日本一区高清| 区国产精品搜索视频| 亚洲成a人片在线观看88| 欧美一区二区三区欧美日韩亚洲 | 欧美亚洲国产一区| 精品久久777| 国产精品美女自慰喷水| 99热免费在线| 国产精品 欧美激情 在线播放 | 国产综合精品日本亚洲777|