下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、基于java的數(shù)據(jù)中心引擎的研究摘要:文中主要是將XML技術(shù)和JAVA技術(shù)應(yīng)用于數(shù)據(jù)集成之中,設(shè)計了基于XML和JAVA技術(shù)為基礎(chǔ)的的數(shù)據(jù)平臺集成框架。系統(tǒng)架構(gòu)主要根據(jù)數(shù)據(jù)管理和集成方面的功能給出了系統(tǒng)設(shè)計的框架,并簡單勾勒了系統(tǒng)之間不同模塊的相互關(guān)系。關(guān)鍵詞:JAVA;XML;數(shù)據(jù)集成;引擎 1.基本概述“數(shù)據(jù)”是計算機應(yīng)用程序最為重要的方面,其核心也即是使某人或計算機可以訪問其“數(shù)據(jù)”。尤其是在現(xiàn)代企業(yè)中,“數(shù)據(jù)”不但是可訪問的,而且還必須是持久的。自上世紀七十年代以來,集中式數(shù)據(jù)庫系統(tǒng)得到了廣泛的使用和迅速的發(fā)展,也是的數(shù)據(jù)管理的效率得到了大幅度提升,目前這種集中式數(shù)據(jù)庫系統(tǒng)的開發(fā)已成為
2、新興技術(shù)發(fā)展的主流。但類似的問題同時也出現(xiàn)了。因為不同的數(shù)據(jù)庫有著各自不同且相互獨立的管理方式和數(shù)據(jù)庫結(jié)構(gòu),這些數(shù)據(jù)庫無論是邏輯上還是物理上都存在這異構(gòu)??蓪⑦@些異構(gòu)性歸納為以下幾點:(1)不同的數(shù)據(jù)庫系統(tǒng)其基礎(chǔ)的操作系統(tǒng)存在著一定的異構(gòu)性,它們可以在不同的操作系統(tǒng)平臺上運行,如Windows NT,Unix,Linux等;(2)不同的數(shù)據(jù)庫其運行所在的計算機體系結(jié)構(gòu)存在著一定的異構(gòu)性,如工作站、大型機、小型機、PC機、嵌入式系統(tǒng)等;(3)數(shù)據(jù)庫的管理系統(tǒng)本身(DMBS)存在著異構(gòu)性,如模式、層次、關(guān)系、網(wǎng)絡(luò)、面向函數(shù)或?qū)ο笮偷臄?shù)據(jù)庫;(4)數(shù)據(jù)語義或存儲結(jié)構(gòu)存在著異構(gòu),通常不同的數(shù)據(jù)庫應(yīng)用系
3、統(tǒng)會有著不同的語義表達方式和不同的數(shù)據(jù)結(jié)構(gòu)形式。隨著網(wǎng)絡(luò)信息化的長足發(fā)展,信息化的進程在企業(yè)、政府等部門的發(fā)展步伐也在不斷加快,越來越多的政府部門、企業(yè)建立了相關(guān)的信息系統(tǒng)。這些信息系統(tǒng)的唯一共性幾乎均是以數(shù)據(jù)形式為核心。隨著這些信息系統(tǒng)的不斷增多,不同系統(tǒng)之間的信息交換和信息資源共享顯得越來越重要。越來越多的用戶希望能有這樣一種服務(wù):即便處在不同網(wǎng)絡(luò)節(jié)點,他們也不必知道各物理數(shù)據(jù)系統(tǒng)的分布形式,也不必知道各數(shù)據(jù)庫的基本結(jié)構(gòu)組成,更不必自己進行數(shù)據(jù)結(jié)果匯總和轉(zhuǎn)換,也即是它能屏蔽掉各層次間的異構(gòu)特性,用戶只需有一步簡單的查詢操作,便可得到自己想要的綜合結(jié)果,就如同是在操作一個數(shù)據(jù)源。我們將這種服
4、務(wù)稱為數(shù)據(jù)集成服務(wù),并將提供這種服務(wù)的平臺稱為數(shù)據(jù)集成平臺(可參見圖-1)。 圖-1 數(shù)據(jù)集成平臺基本框架結(jié)構(gòu)其目的就是為了給用戶提供一個方面訪問異構(gòu)數(shù)據(jù)源的統(tǒng)一接口,用戶只需直接指定其想要的數(shù)據(jù)即可,不必描述怎樣才能得到它。這樣一來所有的數(shù)據(jù)源就如同操作一個一樣,徹底減輕了用戶尋找數(shù)據(jù)源,然后和每個數(shù)據(jù)源實現(xiàn)交互,合并以后返回結(jié)果的負擔,在應(yīng)用構(gòu)件中充當了數(shù)據(jù)總線的作用。2基于JAVA的數(shù)據(jù)中心引擎的設(shè)計2.1Java環(huán)境下的數(shù)據(jù)訪問Java環(huán)境下的數(shù)據(jù)中心訪問技術(shù)可謂“五花八門”,它們同時有著各自的優(yōu)缺點。目前常見的數(shù)據(jù)訪問技術(shù)有JDBC直接訪問數(shù)據(jù)庫、JDO(Java Data Obje
5、cts Java 數(shù)據(jù)對象)、實體bean等,以JDBC技術(shù)為例,JDBC可以說是訪問持久數(shù)據(jù)最直接最原始的方法。由SUN公式提供,主要用來執(zhí)行SQL語句的Java應(yīng)用程序接口。運用JDBC 的開放性和Java語言的中性結(jié)構(gòu)可以使程序員只需寫出單獨一個程序就可以實現(xiàn)發(fā)送JDBC API給相應(yīng)的數(shù)據(jù)庫。在實現(xiàn)對象/關(guān)系(Object/Relation Mapping)和數(shù)據(jù)持久性時,它具有以下優(yōu)點:(1)標準化它通過將特定關(guān)系數(shù)據(jù)庫廠商專用的細節(jié)抽象出來,實現(xiàn)常用數(shù)據(jù)庫訪問功能的標準化。(2)技術(shù)成熟JDBC已經(jīng)有10余年的歷程,屬于Java的核心API,它的最佳實踐及可靠性對于Java的持久機
6、制來說是一筆極其寶貴的資產(chǎn)。(3)成本低JDBC是由Sun公司免費提供的,也即是無需成本的一種的技術(shù)支持。(4)可移植性高JDBC是大家公認的只需程序員寫一次程序就能將它到處運行的技術(shù)。(5)數(shù)據(jù)訪問速度高它是Java環(huán)境中最直接、快速的數(shù)據(jù)訪方法。但任何一種技術(shù)都不是十全十美的,尤其優(yōu)點,必然也存在一些不足,使用JDBC操作數(shù)據(jù)庫時,采用的常規(guī)不步驟如下:(1) 首先建立數(shù)據(jù)庫連接,獲取Connection對象。(2) 組裝查詢SQL語句,并以此建立PreparedStatement對象或Statement對象。(3) 用獲取的Connection對象執(zhí)行SQL查詢語句,并獲得ResultS
7、et結(jié)果集對象。并一條條的讀取其中的數(shù)據(jù)。(4) 結(jié)合所讀取的數(shù)據(jù),計算結(jié)果并在此組裝成新的SQL語句。(5) 再次運用Connection對象執(zhí)行更新后的SQL查詢語句,從而實現(xiàn)數(shù)據(jù)庫中數(shù)據(jù)的更新。由此我們可清晰的看出其邏輯關(guān)系的復(fù)雜性,其中的數(shù)據(jù)存取邏輯和業(yè)務(wù)處理邏輯完全混在一起,而一個完整的系統(tǒng)肯定需要若干這樣重復(fù)的處理過程,若其中一些關(guān)聯(lián)業(yè)務(wù)流程或業(yè)務(wù)邏輯需要修改,那要改動的代碼將不可估量。除此之外,假如要更換數(shù)據(jù)庫運行的環(huán)境或產(chǎn)品內(nèi)容,代碼量的更改也是不可估量的,甚至可以說根本無法完成。而用戶的要求和運行環(huán)境又千差萬別,不可能為每種運行環(huán)境每一用戶設(shè)計單獨的一套系統(tǒng)。所以我們在看到J
8、DBC優(yōu)點的同時,還必須考慮它存在的缺陷和不足。多年來JDBC已知作為Java開發(fā)人員數(shù)據(jù)庫訪問的技術(shù)標準,隨著時間的流逝,它已經(jīng)可以提供完全具有資源池機制和高速緩存的完善的數(shù)據(jù)庫驅(qū)動程序,給開發(fā)人員帶來了不少一處,但用它來實現(xiàn)對象/關(guān)系映射,卻仍有著致命的弱點,曾就有文獻報道說用JDBC進行手工編寫實現(xiàn)對象/關(guān)系映射持久層所占用的時間將占用整個項目開發(fā)的30%-40%。由此看來一些簡單的設(shè)計可以選擇此種技術(shù),但對于一些復(fù)雜度高的程序設(shè)計應(yīng)盡量避免選擇此技術(shù)?;诖?,筆者選擇一種基于XML和Java 技術(shù)的異構(gòu)數(shù)據(jù)集成系統(tǒng)。這種方案采用了當前因特網(wǎng)系統(tǒng)的最新三層體系結(jié)構(gòu),一方面它解決了異構(gòu)數(shù)據(jù)
9、的集成問題,另外它也實現(xiàn)了企業(yè)數(shù)據(jù)的動態(tài)發(fā)布。2.2系統(tǒng)架構(gòu)的分析及設(shè)計這一設(shè)計要點也即是實現(xiàn)各異構(gòu)數(shù)據(jù)間的數(shù)據(jù)共享,通過技術(shù)手段實現(xiàn)各數(shù)據(jù)之間的互訪、互連。因此數(shù)據(jù)中心引擎在進行集成設(shè)計分析時可將各個應(yīng)用系統(tǒng)作為一個一個的單獨模塊進行考慮。文中筆者將傳統(tǒng)數(shù)據(jù)庫技術(shù)和XML相互融合,設(shè)計了如下模型,其實現(xiàn)的基本步驟為:(1)客戶端,在提交一個查詢請求以后,系統(tǒng)經(jīng)過打包器,并同時將所提交的查詢參數(shù)封裝成XML文件,在網(wǎng)上傳輸。(2)中間層,首先應(yīng)用服務(wù)器將接收的文件解密,并將其交給控制器。(3)然后再由控制器調(diào)用解析器對文件進行解析,提取相關(guān)字段進行權(quán)限認證。驗證通過以后進行下一步處理工作。(若
10、驗證未通過,會由控制器向客戶端提示信息出錯)。(4)控制器從元數(shù)據(jù)庫進行查找,如果未找到相關(guān)數(shù)據(jù)源,則向客戶端反饋相應(yīng)提示信息;否則轉(zhuǎn)入下一步工作。(5)找到所需的數(shù)據(jù)源后,再由控制器將查詢請求命令傳給數(shù)據(jù)庫管理器然后進行下一步的數(shù)據(jù)查找處理工作。(6)若數(shù)據(jù)庫管理器處理失敗,則由控制器發(fā)出提示信息;查詢成功,則將其結(jié)果傳給控制器,并由控制器傳給翻譯器進行處理,翻譯器按照預(yù)定的XML格式將查詢到的結(jié)果信息轉(zhuǎn)換成XML文件,再交至控制器,由控制器對其加密,再通過網(wǎng)絡(luò)輸出給客戶端,客戶端再將其查詢結(jié)果進行解密并按照一定格式呈現(xiàn)給用戶。參見圖-2。圖-2 系統(tǒng)架構(gòu)設(shè)計草圖將其異構(gòu)數(shù)據(jù)集成系統(tǒng)細化后的
11、總體結(jié)構(gòu)如圖-3。圖-3 基于XML、Java的企業(yè)異構(gòu)數(shù)據(jù)集成系統(tǒng)總體結(jié)構(gòu)由上至下各層其基本服務(wù)的功能如下:(1) 最底層的數(shù)據(jù)源層,它是數(shù)據(jù)提供者,由不同的數(shù)據(jù)來源構(gòu)成。包括各類文件、數(shù)據(jù)庫等信息。(2) 數(shù)據(jù)中心引擎,它主要提供一些必要的數(shù)據(jù)轉(zhuǎn)換工具或相關(guān)功能。通過它實現(xiàn)對數(shù)據(jù)庫信息的訪問,并將此數(shù)據(jù)轉(zhuǎn)換成成XML文檔進行輸出。(3) 應(yīng)用層,它也即是用戶的界面層,根據(jù)具體的用戶計算和應(yīng)用環(huán)境,采用合適的應(yīng)用軟件和信息訪問技術(shù)。3.總結(jié)由于篇幅限制,本次只簡略介紹了基于JAVA數(shù)據(jù)中心引擎的系統(tǒng)架構(gòu)的分析及設(shè)計,以及客戶端的界面設(shè)計的相關(guān)問題,這一系統(tǒng)中還存在很多待以改進的地方,如:(1)客戶層的代碼明顯較為復(fù)雜,大量代碼仍需開發(fā)者手工進行完成;(2)雖然實現(xiàn)了多方式查詢,但對于更復(fù)雜的關(guān)聯(lián)查詢還不能有效完成。這些問題需要日后參考相關(guān)資料繼續(xù)研究完成?!緟⒖嘉墨I】【1】 張波. 基于Java的數(shù)據(jù)庫訪問引擎的研究與實現(xiàn).北京:中國科技信息技術(shù),2007.5.【2】 邵雄凱. 移動數(shù)據(jù)庫中若干問題的研究.武漢:華中科技大學(xué),2004.【3】 邵雄凱,廖曄元搜索引擎搜索結(jié)果的排
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 下半造價師工程計價知識點缺陷責任期考試試題
- 公開課英語單詞快速記憶
- 高中語文第3單元古思今賞第8課寡人之于國也課件新人教版必修
- 窗簾布藝:團隊卓越之旅-項目管理能力與團隊合作精進之路
- 獨樹一幟的中國畫 課件 2024-2025學(xué)年人教版初中美術(shù)九年級上冊
- 高中語文10蜀道難登高課件蘇教版必修
- 2024至2030年中國控天線彈簧數(shù)據(jù)監(jiān)測研究報告
- 2024至2030年中國引線式石英晶體振蕩器行業(yè)投資前景及策略咨詢研究報告
- 2024至2030年中國差速器十字軸行業(yè)投資前景及策略咨詢研究報告
- 2024至2030年中國大小鼠灌胃針行業(yè)投資前景及策略咨詢研究報告
- 2024高考物理一輪復(fù)習 第13講 牛頓第二定律的基本應(yīng)用(課件)
- 【九上滬科版數(shù)學(xué)】安徽省安慶市2023-2024學(xué)年九年級上學(xué)期期中數(shù)學(xué)試題
- 書法鑒賞 (浙江財大版)學(xué)習通超星期末考試答案章節(jié)答案2024年
- 屋面光伏發(fā)電施工方案
- 期中考試卷(試題)-2024-2025學(xué)年四年級上冊數(shù)學(xué)人教版
- 師范生的教育調(diào)查報告范文(3篇)
- 期中核心素養(yǎng)卷(試題)-2024-2025學(xué)年數(shù)學(xué)四年級上冊蘇教版
- 043.中國老年心肺復(fù)蘇急診專家共識2024
- 浙江省金華市蘭溪市2023-2024學(xué)年五年級上學(xué)期期中數(shù)學(xué)試卷
- 農(nóng)業(yè)經(jīng)理人(中級)技能認證考試復(fù)習題及答案
- 綠植花卉租擺及園林養(yǎng)護服務(wù)投標方案(技術(shù)方案)
評論
0/150
提交評論