日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 模擬 > 模擬
[導讀]為了尋求更有效的數據存取方法,提出一種基于JDBC的高級數據存取框架,該框架旨在用于分離持久邏輯與業(yè)務邏輯。提高軟件開發(fā)效率。結合工程實際分析該框架的設計思想,詳細論述了該框架的實現(xiàn)與應用。并給出進一步實現(xiàn)內容和基于DAO模式實現(xiàn)同類抽象框架的要點,結果表明基于JDBC的高級數據存取框架比傳統(tǒng)數據存取具有優(yōu)越的代碼復用,更易于實現(xiàn)。

1 引言
    Sun Java Center從結構上將基于J2EE的設計模式分為表示層模式、業(yè)務層模式和集成層模式。針對J2EE的不同應用,提出了分離表示層和業(yè)務層的模式和框架。而許多應用系統(tǒng)設計都涉及數據庫或持久性數據存儲,無論是采用Java數據庫連接(Java Database connectivity,簡稱JDBC)還是某種實體組件,大多數應用系統(tǒng)設計都將其直接用于集成層,這樣則混淆業(yè)務邏輯和數據存取,增加應用開發(fā)的復雜性,降低開發(fā)效率,增大維護工作量。
    業(yè)務邏輯與具體應用有關,而與數據分布和存取方法無關。數據存取是持久性邏輯,其常規(guī)操作如創(chuàng)建、讀取、更新和刪除(Creatc,Read,Update,Delete,簡稱CRUD)與業(yè)務規(guī)則無關。基于上述觀點和提高復用性的考慮,這里提出一種基于JDBC的高級數據存取框架,該框架旨在用于分離持久邏輯與業(yè)務邏輯,即在應用開發(fā)中提取數據存取邏輯,使其完全脫離業(yè)務邏輯,并封裝在獨立的框架中,再以統(tǒng)一接口支持業(yè)務邏輯,從而提高軟件開發(fā)效率。

2 高級數據存取框架設計
   
采用會話外觀(Session Facade,簡稱SF)模式實現(xiàn)業(yè)務邏輯與持久性邏輯的關聯(lián)。會話外觀模式主要用于處理集中的工作流,為表示層提供統(tǒng)一、粗粒度的對象訪問。
    實體組件可提供一種特殊的數據處理方法,但無標準Java接口,缺乏靈活性。因此會話組件利用通用的Java數據存取接口訪問數據。使用實體組件存在諸多問題:復雜性導致的性能降低;BMP中的n+l查詢發(fā)現(xiàn)者等。雖然使用JDBC容易出錯,代碼量大,但將操作JDBC的代碼封裝成高級API,大大抑制相應缺陷,并提供使用存儲過程。這樣就可以跨越多個數據庫表的更新;RDBMS從非J2EE環(huán)境移植到J2EE環(huán)境等。
    為了能應用于多種數據庫,保證設計的可移植性,將業(yè)務邏輯與JDBC相應成份分離,把JDBC的使用封裝到一個抽象層中,屏蔽對JDBC和具體RDBMS的依賴性。這樣不僅保持了系統(tǒng)的靈活性,而且層次分明,易于維護。

3 高級數據存取框架模型與實現(xiàn)
   
封裝數據存取接口和實現(xiàn),以熟知的產品表Product和銷售明細表SellDetail為例,其中,Product具有產品標識ID和產品名NAME;SellDetail具有產品ID,銷售日期DATE和銷售量AMOUNT的字段。這樣可根據產品ID查詢產品的銷售清單。
3.1 根據業(yè)務需求設置數值傳遞對象類Value Object
    對于查詢操作,輸入產品ID,則輸出產品名、銷售日期和銷售數量:而對于插入操作,輸入產品ID、銷售日期和銷售數量。數值傳遞對象類構造如下:

   
    傳遞數據有兩種方法:一是將輸入數據直接設置到值對象類的相應變量中,再將該類實例作為參數,調用EJB端會話Bean中的相應方法;二是只傳遞輸入數據的變量,在會話Bean中再將輸入數據的變量值設置到值對象類中進行數據存取。通常在會話Bean中設有合法性檢驗功能,僅當用戶身份合法且具有授權才允許查詢,否則會拒絕請求。采用第二種方法效率高。不設數值傳遞對象類,直接使用動態(tài)數組接收并傳遞數據也可實現(xiàn)相應的功能。
3.2 SellDataDAFramework類
    該類為關鍵類,包含具體數據存取接口實現(xiàn)類的對象。


在大多數問題中都使用了異常SOLException,從SOLExcep—tion中提取信息,一般用戶很難理解,只有通過檢查數據庫供應商提供的特有代碼,才能弄清異常原委。

4 DAccess類
    DAccess類實現(xiàn)了SelIDataDAccess接口,一個接口中CRUD方法是唯一的,針對不同方法,需要重新派生一個實現(xiàn)類,例如DAccess01、DAccess02等。SellDataDAFramework使用DAccess類的對象起索引或指針的作用,并將其加入到vecDAccess中,通過getDAccess方法來實現(xiàn),從而執(zhí)行具體的CRUD操作。下面以DAccess0l為例進行說明。


5 調用高級數據存取框架
   
以會話Bean為例,說明如何調用高級數據存取框架。會話Bean所含的相應方法接收到參數后,先檢驗輸入合法性和權限等業(yè)務,再調用DAccess類進行數據存取操作。


6 分析研究高級數據存取框架
   
為了解決數據庫類型和數據存儲形式的差異,Sun JavaCenter提出了數據訪問對象(Data Access Obiect,簡稱DAO)模式,使用DAO抽象和封裝所有對數據源的訪問和連接,提供用戶統(tǒng)一的訪問方法,其內部實現(xiàn)對用戶是透明的?;贒AO模式的實現(xiàn)框架有多種方式。
    (1)JDBC方式將JDBC API操作封裝成高級類,供會話組件調用,該類包括存取數據分和獲取數據庫連接。
    (2)會話組件方式 使用會話組件控制數據存取,可使用應用服務器所提供的基礎結構服務,如聲明式訪問控制和資源池等,但業(yè)務邏輯和持久性邏輯混在一起。
    (3)實體組件方式 采用實體組件作為數據存取手段.但導致實體組件的復雜性和性能降低。
    其中JDBC方式和所討論的框架相似,最大不同在于所討論的框架是將數據庫連接部分在會話組件中實現(xiàn),會話組件中統(tǒng)一關閉連接符。如果連續(xù)兩次以上訪問數據庫,則無需重建連接。
    基于JDBC的高級數據存取框架把業(yè)務邏輯和數據存取部分由不同類處理,徹底解決了二者間的重疊問題。經驗證該框架運行良好。在會話Bean中,只需取得與具體數據庫的連接以及指定在哪個DAFramework中獲得合理DAccess接口實例即可。針對不同的數據庫提供商,只需在會話Bean中獲得各自的數據連接符,將其傳給DAFramework,而不用改變框架類中的代碼,測試結果證明,該數據存取框架相比傳統(tǒng)的數據存取方法易于實現(xiàn)代碼級復用。
    異常分級處理實現(xiàn)是將JDBC異常轉換成用戶理解的普通異常,這需要根據SQLException所含的供應方錯誤代碼及SQLState碼分類處理,最后解析出具體錯誤。
    基于JDBC的框架不包含連接數據庫,框架內各個組件與具體數據庫無關,即當數據庫發(fā)生非結構性變化時,如服務器位置或數據庫類型變更,組件保持不變,故易用應用生成器(Application Generator)自動生成框架實例,并向最終用戶提供可視化交互界面。

7 結語
   
針對應用開發(fā)存在的問題,尋求更有效的數據存取方法,提出一種基于JDBC的高級數據存取框架,該框架旨在用于分離持久邏輯與業(yè)務邏輯,提高軟件開發(fā)效率。結合工程實際表明基于JDBC的高級數據存取框架具有優(yōu)越的代碼復用,易于實現(xiàn)。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

成都2022年10月19日 /美通社/ -- 近期,平安養(yǎng)老險積極籌備個人養(yǎng)老金的產品設計和系統(tǒng)開發(fā)工作,發(fā)展多樣化的養(yǎng)老金融產品,推動商業(yè)養(yǎng)老保險、個人養(yǎng)老金、專屬商業(yè)養(yǎng)老保險等產品供給。 搭養(yǎng)老政策東風 ...

關鍵字: 溫度 BSP 東風 大眾

廣東佛山2022年10月19日 /美通社/ -- 空間是人居生活的基礎單元,承載著生存與活動的最基本功能。而對于理想空間的解構意義卻在物理性容器之外,體現(xiàn)出人們對于空間和生活深層關系的思考,同時也塑造著人與空間的新型連接...

關鍵字: 溫度 BSP 智能化 進程

上海2022年10月19日 /美通社/ -- 10月17日晚間,安集科技披露業(yè)績預告。今年前三季度,公司預計實現(xiàn)營業(yè)收入7.54億元至8.33億元,同比增長60.24%至77.03%;歸母凈利潤預計為1.73億...

關鍵字: 電子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市經濟和信息化局發(fā)布2022年度第一批北京市市級企業(yè)技術中心創(chuàng)建名單的通知,諾誠健華正式獲得"北京市企業(yè)技術中心"認定。 北京市企業(yè)技...

關鍵字: BSP ARMA COM 代碼

北京2022年10月18日 /美通社/ -- 10月14日,國際數據公司(IDC)發(fā)布《2022Q2中國軟件定義存儲及超融合市場研究報告》,報告顯示:2022年上半年浪潮超融合銷售額同比增長59.4%,近5倍于...

關鍵字: IDC BSP 數字化 數據中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都銀行集團成立60周年的紀念日。趁著首都銀行集團成立60周年與首都銀行(中國)在華深耕經營12年的“大日子”,圍繞作為外資金融機構對在華戰(zhàn)略的構想和業(yè)...

關鍵字: 數字化 BSP 供應鏈 控制

東京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式會社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團公司上海通運國際物流有限公司(Nipp...

關鍵字: 溫控 精密儀器 半導體制造 BSP

廣州2022年10月18日 /美通社/ -- 10月15日,第 132 屆中國進出口商品交易會("廣交會")于"云端"開幕。本屆廣交會上高新技術企業(yè)云集,展出的智能產品超過140,...

關鍵字: 中國智造 BSP 手機 CAN

要問機器人公司哪家強,波士頓動力絕對是其中的佼佼者。近來年該公司在機器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開發(fā)的機器人會后空翻,自主爬樓梯等。這不,波士頓動力又發(fā)布了其機器人組團跳男團舞的新視頻,表演的機器人包括...

關鍵字: 機器人 BSP 工業(yè)機器人 現(xiàn)代汽車

南京2022年10月17日 /美通社/ -- 日前《2022第三屆中國高端家電品牌G50峰會》于浙江寧波落幕,來自兩百余名行業(yè)大咖、專家學者共同探討了在形勢依然嚴峻的當下,如何以科技創(chuàng)新、高端化轉型等手段,幫助...

關鍵字: LINK AI BSP 智能家電

模擬

31144 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉