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

數字化校園數據交換中心的設計與實現

2006-01-01 00:00:00胡艷梅
現代教育技術 2006年1期

【摘要】本文針對校園網應用系統,異構數據庫信息交換與共享困難的問題,較詳細的介紹了基于XML的數據交換中心原型系統的設計與實現。系統利用XML具有良好的擴展性、自描述性、形式與內容分離等特性,較好的解決了校園網應用系統間的數據交換與信息共享問題。

【關鍵詞】校園網,異構數據,XML數據,數據交換

【中圖分類號】G40-052.4【文獻標識碼】B【論文編號】1009—8097(2006)01—0056—04

一、數字化校園建設中存在的問題

隨著信息技術的發展,校園內各管理部門根據自己的部門的需求逐步建立了信息管理系統。比較常見的有:教務管理系統、學院辦公自動化系統、學院人力資源管理系統、學院后勤管理系統等。然而許多學校普遍存在這樣一個現象,由于這些信息管理系統可能在不同的時期,由不同的軟件公司,在不同平臺上根據不同的組件模型和編程語言開發的,這樣常常造成系統之間不能進行有效的實時通信、共享信息,在校園內形成了一個個的“信息孤島”,不利于數字化校園建設工作的開展。

分析其原因,主要是各個部門在進行信息系統建設時創建了大量的數據庫,這些數據庫被獨立地創建和管理,物理上和邏輯上都存在異構。每個獨立的數據庫有自己的模式、數據模型、數據調用語言。

數據庫的異構性主要體現在以下幾個方面[1]

1、由計算機體系結構造成的異構。數據庫可能運行于大型機、小型機、工作站、PC等系統中。

2、操作系統的差異造成的異構。數據庫系統可能安裝于U n ix 、W indow N T 、L inux等操作系統上。

3、數據庫結構及語義異構。數據庫應用系統采用不同的數據結構和語義表達方式。

由此產生的信息交流屏障使得校園網各應用管理系統無法充分發揮各自的效能。甚至出現財務數據與學籍管理數據不一致的現象,給校園信息化管理帶來一定的混亂。

二、數據交換中心的架構設計

由于數字化校園應是一種全新的、開放的、擁有豐富信息和良好服務能力的資源共享環境。如何較好地解決校園網各應用系統間異構數據的交換與信息共享已經成為數字化校園建設中迫切需要解決的問題。我們常見的校園信息管理系統多采用B/S(Brower/Server)或C/S模式開發。后臺數據庫則多采用關系型數據庫如:SQL SERVER、oracle、sybase等。

基于此類以關系型數據庫為后臺的校園網應用系統,我們設計了基于XML技術的第三方數據交換中心平臺。

數據交換平臺是基于XML(eXtensible Markup Language)[2]技術的軟件平臺。平臺利用“可擴展標記語言”XML具有的將數據與顯示分離的特性和XSLT(eXtensible Stylesheet Language Transformation) [2]擴展風格表單語言的映射功能,可將一種格式的XML源文件轉換為另一種格式的XML輸出文件,從而實現數據的交換與信息共享[3]。且XML 是一種簡單、與平臺無關并被廣泛采用的標準。它具有的可擴展特性和自描述性克服了傳統標準缺乏靈活性和可擴展性的弱點,使系統表現出較好的開放性與可擴展性[4]

假設校園網存在兩個異構數據格式的應用系統:教務管理系統A與辦公自動化系統B,兩系統均使用關系型數據庫作為后臺數據庫。教務管理系統A有格式為DATA(A,A)的數據集,辦公自動化系統B有格式為DATA(B,B)的數據集,由于A系統與B系統數據格式的不一致,因此我們將無法實現系統數據的交換與共享。為此我們采用如下機制實現數據轉換:

1、以教育部《教育管理信息化標準》[5]為依據,并根據學院自身的具體情況,確定一個具有普遍代表性的XML數據標準,即School_Template_Data(D,D),在此數據標準中主要確定學院最為基本,最為常用的相關數據和數據結構,如學生信息可參照表1[5]進行設置。以此作為數據轉換中的標準XML數據格式。

2、將需轉換的異構數據映射為XML文檔。為通過數據引擎實現數據的轉換作準備。

3、使用XSLT 擴展風格表單語言編寫XSLT(A->D)、XSLT(D->A)及XSLT(B->D)、XSLT(D->B)轉換模板文檔,并建立對應的格式說明文檔集Des_Data_A和Des_Data_B。

4、數據引擎首先利用與之對應的XSLT(A->D)模板將DATA(A,A)數據轉換為School_Template_Data(D,D)格式的標準XML數據。

5、隨后數據引擎再利用XSLT(D->B)將School_Template

_Data(D,D)數據轉換成符合B格式的數據DATA(B,B),從而實現數據A到數據B的轉換;反之亦然。

系統架構如圖1所示:

三、數據交換中心建設中的幾個關鍵問題

1、XML數據交換引擎的設計與實現

XML數據交換引擎是數據交換系統的核心部分。XML數據交換引擎。主要負責異構數據信息的轉換,在數據轉換過程中引擎根據系統中已注冊的傳入源文件與輸出目標文件,從XLST映射文件庫中調用與之對應轉換映射文件XLST(Sourse

->D)將源文件轉換為系統標準XML文檔。隨后,引擎再次調用XLST(D->Destination)文件,將系統標準XML文檔轉換為目標文件,完成一次轉換過程,引擎采用多線程處理機制。它主要由數據轉換模塊與XSLT數據轉換映射文件庫組成。

在這里我們選用Microsoft公司.NET平臺的C#語言來實現數據交換系統的開發。數據引擎的部分實現代碼如下所示:

……

public class Transition_Engine{

public void Xml_Transition(string inputXmlName,sring xlst_Exchange,

out string outputXmlName) {

//定義輸入文件

private const String input_filename= inputXmlName;

//定義映射文件XSLT

private const String xstl_stylesheet= xlst_Exchange;

//定義輸出文件

private const String output_filename= outputXmlName;

//創建XslTransform 對象

XslTransform xslt = new XslTransform();

//加載 XSLT 映射文件

xslt.Load(xstl_stylesheet);

//創建一個XPathDocument 對象實例并加載被轉換文件

XPathDocument xpathdocument = new XPathDocument(input_filename);

//為輸出文件創建一個XmlTextWriter 對象實例

XmlTextWriter writer = new XmlTextWriter(output_filename, 1);

//利用Transform 實現數據的轉換

xslt.Transform(mydata,1,writer, 1);

}

……

}

public class Exchang_Engine{

public static int Main(){

……

//創建一個Transition_Engine類實例

Transition_Engine ex_XML_engine = new Transition_Engine ();

//創建一個線程

Thread ex_XML_engine = new Thread(new ThreadStart(ex_XML_engine. Xml_Transition));

//調用Start方法啟動線程

ex_XML_engine.Start();

……

}

}

2、XML數據交換接口的設計與實現

數據交換接口主要實現兩個方面的功能。其一,將待交換數據映射為XML文檔,即數據的輸出;其二,對轉換后的輸入XML文檔進行合法性檢查,通過檢查的數據被讀入數據庫實現數據的更新,即數據的輸入。

(1)數據輸出主要執行下列步驟:

#61548;根據各系統后臺數據庫的具體情況與其建立連接

#61548;從數據庫中獲取需要轉換的數據

#61548;生成DataSet數據集,并將數據轉換為XML文檔

#61548;完成轉換后關閉與數據庫的連接

相關數據輸出實現代碼如下所示:

……

private void Write_Data(String XMLOutDoucument) {

try{

// 將DataSet數據寫入到指定XML文檔中

stringData_xmlFilename = XMLOutDoucument;

//創建一個文件流

System.IO.FileStreamData _fsWriteXml = new System.IO.FileStream

(Data _xmlFilename, System.IO.FileMode.Create);

// 創建一個XmlTextWriter 對象實例 Data _xmlWriter

System.Xml.XmlTextWriterData _xmlWriter = newSystem.Xml.XmlTextWriter

(Data _fsWriteXml, System.Text.Encoding.Unicode);

// 將數據寫入到XML文檔中

ds.WriteXml(Data _xmlWriter);

// 關閉文件流

Data _fsWriteXml.Close();

}

catch (Exception) {

return 1;

}

}

……

(2)數據輸入主要由下列操作組成:

#61548;輸入數據的身份驗證。此步驟主要驗證傳入數據是否為系統的合法數據。數據的來源及目標是否有效。

#61548;進一步對轉換后的XML輸入數據進行結構及合法性檢查,確保輸入數據的完整性及正確性。

此處我們利用XSD (XML Schema Definition)[6]架構定義語言對數據進行合法性檢查。相關代碼如下所示:

……

//創建一個驗證XML文件流

FileStreamData_stream = new FileStream(\"input_XML.xml\", FileMode.Open);

//創建一XmlValidatingReader對象

XmlValidatingReader Data_vr = new XmlValidatingReader(Data_stream, XmlNodeType.Element, 1);

//導入XSD架構驗證文件

Data_vr.Schemas.Add(1, \"OA_Schema_Definition.xsd\");

Data_vr.ValidationType = ValidationType.Schema;

//當事件觸發時指定事件處理程序

Data_vr.ValidationEventHandler += new ValidationEventHandler (ValidationHandler);

……

//定義事件的處理方法

public void ValidationHandler(object sender, ValidationEventArgs args) {

Console.WriteLine(\"-----Validation error-----\");

……

}

……

#61548;建立與數據庫的連接。

#61548;將數據讀入系統,并對數據庫進行更新。

數據輸入流程如圖2所示。

四、結論與展望

數據交換中心在構建數字化校園建設中占有十分重要的地位。本文探討了數字化校園建設中存在的問題及異構數據形成的原因。并對如何構建異構信息交換平臺提出了具體的解決方案,給出了實現代碼。通過實踐表明,此方案是一種切實可行的解決方案。它具有簡單、靈活、開放和可擴展等優點,能夠有效的實現異構數據的交換與信息共享。由于數據交換中心主要針對后臺使用關系型數據庫的校園應用系統,對于非關系型數據庫的系統如基于Lotus開發的辦公自動化系統,系統無法直接進行數據交換,為此我們需要進一步對其進行研究與改進。

參考文獻

[1] 何東隆,李美真. 精通XML與網頁設計高級教程[M] .中國青年出版社,2001:3-4

[2] http :/ / www.w3. com/ xml . 2000, (7)

[3] Charles F. Goldfarb. XML實用技術[M] . 北京:清華大學出版社,1999

[4] Didier Martin. XML高級編程[M].北京:機械工業出版社,2000,(1):2- 4

[5] 中國人民共和國教育部編. 教育管理信息化標準第1部分:學校管理信息標準[M]. 人民郵電出版社, 2002, (10):309-310

[6] MSxmlSDK, http :/ / msdn. microsoft . com/ xml [ EB/ OL ]. 2000,(7)

*本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文

主站蜘蛛池模板: 成年A级毛片| jizz国产视频| 丝袜亚洲综合| 无码免费的亚洲视频| 在线欧美日韩| 一级毛片免费的| 伊人久久久久久久| 国产精品va| 国产又色又刺激高潮免费看| 国产熟女一级毛片| 久久亚洲黄色视频| 狠狠色综合久久狠狠色综合| 国产精品久线在线观看| 欧美中文字幕无线码视频| 久久99蜜桃精品久久久久小说| 久久永久免费人妻精品| 免费xxxxx在线观看网站| 国产日韩精品一区在线不卡 | 欧美成人午夜影院| 女人18毛片久久| a毛片在线播放| 成人福利在线视频免费观看| 综合色在线| 在线国产综合一区二区三区| 毛片免费高清免费| 毛片大全免费观看| 91久久精品国产| 亚洲男人在线天堂| 久久精品丝袜| 国产成人亚洲毛片| 亚洲精品国产自在现线最新| 国产91精选在线观看| 天堂成人在线| 毛片最新网址| 亚洲第一区在线| 97国产在线播放| JIZZ亚洲国产| 成人字幕网视频在线观看| 麻豆AV网站免费进入| 91精品免费高清在线| 成人福利在线免费观看| 国产理论精品| 国产91av在线| 青草视频久久| 天天综合色天天综合网| 国产手机在线观看| 98超碰在线观看| av在线无码浏览| 中文字幕2区| 国产丝袜无码精品| 精品国产一二三区| 欧美日韩国产成人高清视频| 亚洲精品亚洲人成在线| 97精品伊人久久大香线蕉| 免费观看精品视频999| 天天躁夜夜躁狠狠躁图片| 草草线在成年免费视频2| 亚洲AV免费一区二区三区| swag国产精品| 欧美精品导航| 精品久久久久久成人AV| 国产欧美精品专区一区二区| 亚洲精品成人片在线观看| a毛片免费在线观看| 国产h视频在线观看视频| 国产经典在线观看一区| 2021国产在线视频| 欧洲av毛片| 国产精品人人做人人爽人人添| 国产91精品调教在线播放| 美女黄网十八禁免费看| 国产精品久久自在自2021| 国产精品视频系列专区| 毛片国产精品完整版| 国产精品第5页| 五月婷婷激情四射| 亚洲无码电影| 亚洲中文在线看视频一区| 亚洲一区二区约美女探花| 26uuu国产精品视频| 亚洲AV色香蕉一区二区| 国产在线小视频|