Java與XML的結(jié)合應(yīng)用
- 期刊名字:計(jì)算機(jī)應(yīng)用
- 文件大小:282kb
- 論文作者:李大成,陳莘萌
- 作者單位:武漢大學(xué)
- 更新時(shí)間:2020-06-12
- 下載次數(shù):次
第22卷第2期計(jì)算機(jī)應(yīng)用Vol. 22. No. 22002年2月Computer ApplicationsFeb.2002文章編號(hào):001-90820022-0059-03Java與ⅹML的結(jié)合應(yīng)用李大成陳莘萌武漢大學(xué)計(jì)算機(jī)科學(xué)學(xué)院湖北武漢430072)摘要作為SGⅦL的子集元標(biāo)記語(yǔ)言ⅹML及其相關(guān)技術(shù)目前正得到越來(lái)越廣泛的應(yīng)用。文檔對(duì)象模型DOM是一種平臺(tái)無(wú)關(guān)、語(yǔ)言無(wú)關(guān)的標(biāo)準(zhǔn)接口它允許程序從應(yīng)用中訪問(wèn)和修改XML文檔的內(nèi)容和結(jié)構(gòu)。文中首先論述了ⅹML的應(yīng)用前景和應(yīng)用現(xiàn)狀然后提岀了基于DOM的ⅹM文檔支持系統(tǒng)并研究了用 Java servlets和ⅹML來(lái)共同生成XML文檔和DOM樹(shù)。關(guān)鍵詞XML;DOM; Java servlets中圖分類號(hào):TP311.52文獻(xiàn)標(biāo)識(shí)碼1XML簡(jiǎn)介XML目前最廣泛的應(yīng)用可以分為以下四大類需要網(wǎng)絡(luò)客戶端協(xié)調(diào)多種不同類型數(shù)據(jù)庫(kù)的應(yīng)用;力圖將比例可觀的1.1XM產(chǎn)生的背景處理工作從服務(wù)器端分布于客戶端的應(yīng)用要求客戶端將同ⅹML技術(shù)是互聯(lián)網(wǎng)國(guó)際標(biāo)準(zhǔn)組織W3C提出的表示數(shù)據(jù)一數(shù)據(jù)以不同的形式展現(xiàn)給不同的使用者的應(yīng)用習(xí)智能網(wǎng)絡(luò)語(yǔ)義信息的標(biāo)準(zhǔn)。同HML一樣都來(lái)自 Standard generalizes代理應(yīng)個(gè)別用戶的需要搜索定制信息的應(yīng)用Markup languag(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言)稱SGMⅦ。SGM是-1.3XM的應(yīng)用種用標(biāo)記來(lái)描述文檔資料的通用語(yǔ)言,它包含了一系列的XML帶有一個(gè)XML語(yǔ)法分析器。XML語(yǔ)法分析器使用mr〔 Document' Type Definition,文檔類型定義〕規(guī)范,中定υ來(lái)確定一個(gè)文件是否是規(guī)范化的即它應(yīng)該包含正確定義了標(biāo)記的含義因而SGML的語(yǔ)法是可以擴(kuò)展的。但由于義的開(kāi)始和結(jié)束標(biāo)記。如果它是有效的那么就說(shuō)明完全遵SGML十分復(fù)雜、龐大、不易學(xué)在計(jì)算機(jī)上實(shí)現(xiàn)也比較困難。守DD規(guī)范。因此XML定義了更嚴(yán)格的數(shù)據(jù)結(jié)構(gòu)。這樣用鑒于這些原因Wb的發(fā)明者根據(jù)當(dāng)時(shí)計(jì)算機(jī)技術(shù)的能力提戶可以很容易將文件的屬性映射到數(shù)據(jù)結(jié)構(gòu)或?qū)ο蠓旨?jí)結(jié)構(gòu)出了HML語(yǔ)言。HML語(yǔ)言只使用了SGⅦL中很小一部分中這就使客戶端的瀏覽器和數(shù)據(jù)庫(kù)之間來(lái)回傳輸文件變得標(biāo)記,為了便于計(jì)算機(jī)上實(shí)現(xiàn),HIML規(guī)定的標(biāo)記是固定的,很可靠也使用戶可以使用結(jié)構(gòu)化的XML文件作為一種中介即HML語(yǔ)法是不可擴(kuò)展的,它不需要包含υ。HML以其體讓數(shù)據(jù)在兩種數(shù)據(jù)庫(kù)之間靈活地進(jìn)行轉(zhuǎn)移。也就是說(shuō)我簡(jiǎn)單精練的語(yǔ)法、極易掌握的通用性與易學(xué)性使Web網(wǎng)頁(yè)們得到了一種從文件中檢索信息的可靠辦法這就是我們熟可以接近于每個(gè)普通人互聯(lián)網(wǎng)也得以迅猛發(fā)展。然而電子悉的語(yǔ)法分析。這種數(shù)據(jù)結(jié)構(gòu)的另一個(gè)好處是使各種格式的商務(wù)、電子圖書(shū)、遠(yuǎn)程教育等全新領(lǐng)域的異軍突起逐漸發(fā)展XML文件都可以被機(jī)器識(shí)別這樣允許機(jī)器能夠識(shí)別各種成為互聯(lián)網(wǎng)世界愈發(fā)重要的組成部分隨之而來(lái)的是Web文格式的XML頁(yè)面就可以讓不同Web站點(diǎn)之間自動(dòng)共享不同件的復(fù)雜化、多樣化、智能化于是高容量、高信息量、高效率格式的數(shù)據(jù)便成為網(wǎng)絡(luò)信息傳輸技術(shù)發(fā)展的追求。與此同時(shí)還有另種需求變得愈發(fā)廣泛而迫切即數(shù)據(jù)能否根據(jù)不同用戶不同2XML與Java的結(jié)合應(yīng)用需求而以不同的效果、不同的形式表現(xiàn)出來(lái)。這一切都是2.1XML與Java的結(jié)合HTML所不能滿足的開(kāi)發(fā)一種新的Web頁(yè)面語(yǔ)言已勢(shì)在必Java語(yǔ)言是一種流行的面向?qū)ο蟮木幊陶Z(yǔ)言,由Sum行。We標(biāo)準(zhǔn)化組織W3C建議使用一種精簡(jiǎn)的SCML版本 Microsystems在上世紀(jì)90年代中期開(kāi)發(fā)。它是一個(gè)基于JavaXML應(yīng)運(yùn)而生了虛擬機(jī)(JVM)的、與操作平臺(tái)無(wú)關(guān)的執(zhí)行模型由于用作萬(wàn)1.2XML的現(xiàn)狀維網(wǎng)應(yīng)用程序的編程語(yǔ)言而很快被廣泛的接受。與C++不XML是一個(gè)精簡(jiǎn)的SGML,它將SGM的豐富功能與同Java類定義放在一個(gè)單獨(dú)的自含式文件中既沒(méi)有單獨(dú)的HIML的易用性結(jié)合到We的應(yīng)用中。XML保留了SGML的頭文件也沒(méi)有執(zhí)行文件并且Java語(yǔ)言基本上沒(méi)有定義的次可擴(kuò)展功能這使XML從根本上有別于HM。XⅦL要比序相關(guān)性。在出現(xiàn)方法體時(shí),它總是緊隨方法特征聲明之后HNL強(qiáng)大得多,它不再是固定的標(biāo)記而允許定義數(shù)量不限定義。此外Jaa語(yǔ)言缺少集成處理器。這些特性合在一起的標(biāo)記來(lái)描述文檔中的資料允許嵌套的信息結(jié)構(gòu)。HML使Java凵中國(guó)煤化工使語(yǔ)言成為使用只是Web顯示數(shù)據(jù)的通用方法而XML提供了一個(gè)直接處理XML表wecb數(shù)據(jù)的通用方法。HIML著重描述Wcb頁(yè)面的顯示格CNMHG、易提取信息的文檔和式而XML著重描述Web頁(yè)面的內(nèi)容。數(shù)據(jù)而java有助于獨(dú)立平臺(tái)、易于處理的面向?qū)ο蟮膽?yīng)用收稿日期2001-09-19作者簡(jiǎn)介李大成〔198-)男頑士主要研究方向軟件技術(shù)與軟件工程;陳莘頔1930-)男教授博士生導(dǎo)師主要研究方向汁箅機(jī)體系結(jié)構(gòu)、計(jì)算機(jī)軟件與理論計(jì)算機(jī)應(yīng)用2002年軟件解決方案。在Wb應(yīng)用中Java使瀏覽器工作時(shí)就象在提供一個(gè)可使用于多個(gè)平臺(tái)的編程接口。因此DOM是一個(gè)通用的應(yīng)用平臺(tái)上而平臺(tái)與平臺(tái)之間是相互獨(dú)立的。在適合多個(gè)平臺(tái)可使用任意編程語(yǔ)言實(shí)現(xiàn)的方法。HTML語(yǔ)言中由于固定的tag集合和HM語(yǔ)義上的貧瘠使DOM的核心是定義了代表構(gòu)成XML文檔的所有對(duì)象的得Jawa的應(yīng)用受到了極大的限制。而且由于在HML中不一系列類型元素、屬性、實(shí)體引用、注釋、文本數(shù)據(jù)、處理指示同的語(yǔ)義無(wú)法表現(xiàn)故數(shù)據(jù)元中豐富的信息得不到一種統(tǒng)—和其余對(duì)象。從DOM的觀點(diǎn)來(lái)看文檔的邏輯結(jié)構(gòu)通常是樹(shù)的表示但ⅹML卻能很好的解決這個(gè)問(wèn)題形的每個(gè)文檔可含有一個(gè)文檔類型節(jié)點(diǎn)、一個(gè)根節(jié)點(diǎn)可有XML的應(yīng)用大致上可以分為三大類零以上的子要素或操作指示等子節(jié)點(diǎn)。節(jié)點(diǎn)把功能與行為封)簡(jiǎn)單數(shù)據(jù)的表示和交換(針對(duì)ⅹML的簡(jiǎn)單 APK SAX)裝在一起成為對(duì)象如要素節(jié)點(diǎn)對(duì)象文檔片段對(duì)象等。DOM和文檔對(duì)象模型〔DOM)語(yǔ)法解析,不同的文檔類型定義提供了一種對(duì)這些對(duì)象節(jié)點(diǎn)的標(biāo)準(zhǔn)訪問(wèn)接口接口采用了DTD和概要 schemas)OMG的IL語(yǔ)言來(lái)定義接口函數(shù)功能的實(shí)現(xiàn)視應(yīng)用而定2)面向消息的計(jì)簟(XML-RPα遠(yuǎn)程過(guò)程調(diào)用)SOAP這些接口被用于對(duì)XM和HnML文檔的內(nèi)容、結(jié)構(gòu)和風(fēng)格進(jìn)協(xié)議電子化業(yè)務(wù)XM(eML)行動(dòng)態(tài)操縱如建立文檔遍歷其結(jié)構(gòu)添加、修改、刪除要素3)用戶界面相關(guān)、表示相關(guān)的上下文(可擴(kuò)展樣式表語(yǔ)和內(nèi)容等。由于ID是平臺(tái)、語(yǔ)言無(wú)關(guān)的所以利用DOM這言XSL)可擴(kuò)展樣式表語(yǔ)言轉(zhuǎn)換(XSLT)個(gè)能被不同環(huán)境或應(yīng)用所利用的標(biāo)準(zhǔn)的程序設(shè)計(jì)接口可以實(shí)這幾類應(yīng)用在p2EJaa2 latform Enterprise Edition架構(gòu)現(xiàn)We的互操作。中恰好有天然的對(duì)應(yīng)數(shù)據(jù)表示和交換功能是EJB組件模型DOM接口繼承樹(shù)的根節(jié)點(diǎn)是Node,由于把XML文檔的中持久化服炙 persistence services舶的一部分基于消息的通訊邏輯結(jié)構(gòu)看作是樹(shù)形結(jié)構(gòu),它定義了處理XML文檔的一些必由Jaa消息服氖灬Ms)AP來(lái)處理而界面表示正是Java服務(wù)要方法,這些方法包括讀取、刪除、修改新增子節(jié)點(diǎn)器頁(yè)面P廂 Java Servlets最為擅長(zhǎng)處理的。Document代表整個(gè)XML文件對(duì)象它提供了處理該對(duì)象的2.2XML與Java在Web應(yīng)用上的三層結(jié)構(gòu)系列類型沅元素、屬性、實(shí)體引用、注釋等。 Document Fragment通過(guò)將Web應(yīng)用程序劃分為三層結(jié)構(gòu)我們可以區(qū)分出允許提取文檔的一部分。(如圖2)應(yīng)用程序的三個(gè)邏輯組件用戶界面、計(jì)算邏輯與數(shù)據(jù)存[瀏覽器瀏覽器儲(chǔ)。然后針對(duì)每個(gè)邏輯單元獨(dú)立進(jìn)行開(kāi)發(fā)從而極大地增強(qiáng)應(yīng)用程序設(shè)計(jì)的靈活性。例如將計(jì)算邏輯與用戶界interpt面分隔開(kāi)來(lái)開(kāi)發(fā)各種各樣的用戶界面。這樣不僅允許不同類型的用戶訪問(wèn)同一計(jì)算層也可以根據(jù)每一類用XML document戶的特定需要定制各自的界面。數(shù)據(jù)存儲(chǔ)層允許在對(duì)數(shù)Stncture services據(jù)存儲(chǔ)方式完全改變的情況下不影響應(yīng)用程序的計(jì)算servletsJSPs BeansEJBs邏輯或用戶界面。(如圖1)Database Connectors從三層結(jié)構(gòu)中獲益最大的是中間層因?yàn)槿龑咏Y(jié)構(gòu)允許計(jì)算邏輯的開(kāi)發(fā)達(dá)到任意復(fù)雜的程度,它自己也可Data server以包含多層。而且三層結(jié)構(gòu)還允許任意改變計(jì)算邏輯,而不會(huì)影響到用戶與之交互的方式。Java與XML的結(jié)圖2DOM接口繼承結(jié)構(gòu)圖合提供了建立三層應(yīng)用程序的最佳手段。DOM不涉及數(shù)據(jù)類型或數(shù)據(jù)結(jié)構(gòu): cument'T'ype可以是XML與Java在Web應(yīng)用上的三層結(jié)構(gòu)圖字符串、整型值或枚舉類型; lement可以是樹(shù)、散列表或數(shù)組。所有這些決定都用于實(shí)現(xiàn)程序中而且W3C提供的JavaNodeList聯(lián)編也將大多數(shù)決定留給實(shí)現(xiàn)程序。例如Java接口沒(méi)有聲明任何變量以對(duì)應(yīng)IL屬性 Interface Definition language)Java聯(lián)編中唯一的類是 DOMException它擴(kuò)展了 Runtime Exception并定義了一些公共靜態(tài)的代碼用于不同的錯(cuò)誤條件。個(gè)XML應(yīng)用通常是基于一個(gè)XML解析器而構(gòu)建的。它為其用戶提供了一個(gè)接口,以及對(duì)后端存儲(chǔ)數(shù)據(jù)的一個(gè)接口。目前支持DOM的解析器很多,比較常見(jiàn)的有 Apache的ProcessingInstrcutionmercer.jar和IBM的xml4jjar圖用來(lái)裝載ⅹM文檔到緩存中文檔裝載時(shí)可3文檔對(duì)象模式DOM)以使用中國(guó)煤化工采用樹(shù)形結(jié)構(gòu)表示MM文檔CNMHG素有一個(gè)或多個(gè)子節(jié)點(diǎn)DOM代表文檔對(duì)象模型( Document Object Model),它是用來(lái)表示樹(shù)的分枝。HIML和ⅹML文檔的編程基礎(chǔ)它定義了處理執(zhí)行文檔的途節(jié)點(diǎn)接口程序通常用來(lái)讀和寫(xiě)XML節(jié)點(diǎn)樹(shù)中的個(gè)別元徑。DOM已經(jīng)被制定為 Java xmi處理的標(biāo)準(zhǔn),封裝在og素文檔元素的子節(jié)點(diǎn)屬性可以用來(lái)構(gòu)造個(gè)別元素節(jié)點(diǎn)3e.domn包里面。編程者可以使用DOM增加文檔、定位文檔 XML parser用來(lái)證明we中的DOM支持遍歷節(jié)點(diǎn)樹(shù)的所有結(jié)構(gòu)、填加修改刪除文檔元素。W3C的重要目標(biāo)是利用DOM函數(shù)并可通過(guò)它們?cè)L問(wèn)節(jié)點(diǎn)和及其屬性、插入刪除節(jié)點(diǎn)、轉(zhuǎn)第2期李大成等Java與XML的結(jié)合應(yīng)用換節(jié)點(diǎn)樹(shù)到XML中Element root doc createElement("Milan4示例oc createElement("tear在這個(gè)示例中我們用 java servlets和XM來(lái)共同生成了Element Name doc createElement ("nameName append Child(doc. create Text Node("AC Milan"))XML文檔和DOM樹(shù)。這里我們擴(kuò)展了 HttpseRvlet類author appendChild( Name)HttpseRvleT類提供了通常與CCI程序相關(guān)的功能,它支持pt和get并且使代碼具有對(duì)HTTP請(qǐng)求標(biāo)頭的完全訪問(wèn)權(quán)包我們創(chuàng)建了一個(gè)Java類的實(shí)例,該類實(shí)現(xiàn)了DOM括UsDocument接口然后要求這個(gè)節(jié)點(diǎn)創(chuàng)建各種節(jié)點(diǎn)。這里定義一般的在構(gòu)建理解XML的 servlet時(shí)主要按以下三個(gè)了一些實(shí)例變量來(lái)保存準(zhǔn)備為其提供服務(wù)的節(jié)點(diǎn)的值。這些步驟進(jìn)行值在類聲明頂部聲明并在 initialκe方法中初始化。將內(nèi)容類型設(shè)為text/xm最后一步是將被請(qǐng)求的DOM樹(shù)部分發(fā)送給用戶。我們ap response. setContent'Typd"text/xml")使用一個(gè)遞歸方法 print DOMTree來(lái)實(shí)現(xiàn)這一任務(wù),它處理節(jié)b)創(chuàng)建ⅹML文檔。點(diǎn)及其所有子節(jié)點(diǎn)。因?yàn)檫@個(gè)方法是遞歸的所以我們從文c)將XML文檔寫(xiě)回客戶機(jī)。檔根節(jié)點(diǎn)還是從DOM樹(shù)的其他節(jié)點(diǎn)開(kāi)始并不重要。如果所在編寫(xiě)的大多數(shù) Servlet中主要精力都集中在第二步。請(qǐng)求的是我們知道的一個(gè)節(jié)點(diǎn)則可以將這個(gè)節(jié)點(diǎn)傳遞給方例如我們可以根據(jù)數(shù)據(jù)庫(kù)査詢創(chuàng)建一個(gè)XML文檔也可能法 printDOMTreeo否則我們可以傳遞 Document節(jié)點(diǎn)。基于從客戶傳送來(lái)的HTP參數(shù)生成它或者是使用其他類清單3顯示了這一步驟。型的數(shù)據(jù)檢索或生成方法。清單3.p在本例中我們從零開(kāi)始生成一個(gè)DOM樹(shù)然后將 DOM if( requestedSubtree. equalslgnore Case"eam”)樹(shù)的一部分顯示在請(qǐng)求者的屏幕上。向請(qǐng)求者發(fā)送回的tDOMTree( team, outDOM樹(shù)部分取決于 servlet接收到的HP參數(shù)而無(wú)需XMLualslgnore Case("players"))源文檔printDOMTree( players, out)清單1顯示了處理HTP參數(shù)的代碼段單1. xmlfromdom.javaprint DOMTree( doc, out)publicvoidservice(httpServletrequestrequestHttpservletRespon這一步驟的流程如下如果樹(shù)的根是NUL則返回throws IOException, Servlet Excepti對(duì)根節(jié)樹(shù)的每個(gè)節(jié)點(diǎn)都需要執(zhí)行的操作將當(dāng)前根節(jié)點(diǎn)的每個(gè)子節(jié)點(diǎn)作為根節(jié)點(diǎn)遞歸重復(fù)該過(guò)response. setContentType("text/xml")Print Writer out response. get Writer(Enumeration ke根據(jù)請(qǐng)求,將當(dāng)前節(jié)點(diǎn)輸出為可以被瀏覽器識(shí)別的String keyXMIString requestedSubtree顯示結(jié)果如果 subtree參數(shù)是team則返回結(jié)果是while( keys has More Elements())name AC Milan Italy request. get Parameter( key如果suee參數(shù)是 player則返回是我們使用 Http Servletrequest. get ParameterNames方法從player> Tom Ron KurT找用戶所請(qǐng)求的信息。我們使用的信息從對(duì)象中構(gòu)建DOM樹(shù)該DOM樹(shù)包含了某球隊(duì)各個(gè)球員名稱的文本,以及球隊(duì)的其他信息。我們將根據(jù) Http subtree參數(shù)返回DoM樹(shù)的5結(jié)語(yǔ)部分。清單2顯示了構(gòu)建DOM樹(shù)的部分代碼清單2.構(gòu)建DOM樹(shù)分應(yīng)用程序是如今最常見(jiàn)、最值得投入的一種應(yīng)用程中國(guó)煤化工方式是使之成為三層應(yīng)Element用程序CNMHG成部分用戶界面、計(jì)算邏輯與數(shù)據(jù)存儲(chǔ)而Ja與XML的組合提供了建立三層應(yīng)用ublic void initialize()程序的最佳手段。doc=( Document)Class. for Name ("org. apache. xerces. dom從Web或者企業(yè)級(jí)應(yīng)用的角度看能以這種方式訪問(wèn)數(shù)DocumentImpl"). newlnstance(據(jù)真是一種福音它體現(xiàn)了高度的可移動(dòng)性使我們與元數(shù)據(jù)if(doc ! null)(下轉(zhuǎn)第64頁(yè)計(jì)算機(jī)應(yīng)用2002年obj Root appendChild objRecordxmldoc= new ActiveXObject(microsoft xmldom")or xTo Request Form. Countxmldoc.load("www.autopart.org/xs.xml")If instr(1, Request Form. Key(x), "lin")= 0 ThenSet obj ield obj Dom, createElement("field")function Query XMLRec()(objattID. Text Request Form Key(x)root xmldom document ElementSet obj Field Value obj Dom, createElement ("field-value")for (j=0;j< root, childNodes, item(i) attributes. length; j++)bjFieldvalue. Text= Request. Form(x)if((root. childNodes. item(i). attributes(j).namebj Field append child objField valueLBJNAME. value)&合并XML文檔(root childNodes item(i), attributes(j), value = VALUE4.4服務(wù)器端管理程序的設(shè)計(jì)開(kāi)發(fā)分析汽車的結(jié)構(gòu)可知汽車一共包括27個(gè)部件。從系統(tǒng)的設(shè)計(jì)出發(fā)每一個(gè)部件都對(duì)應(yīng)一個(gè)XML部件庫(kù)。它們是汽車的個(gè)性庫(kù)”同時(shí)這27庫(kù)”又有共性的東西即它們管理程序的三項(xiàng)基本操作:添加、刪除、修改,分別由記錄都是一對(duì)<產(chǎn)品>產(chǎn)品>"tag構(gòu)成的庫(kù)的結(jié)構(gòu)完 ddXMlRec( subFilename), DelXmlrec( strRECNO), EditXMlrec全相同。這些部件庫(kù)是以文檔的形式存在并且由文件系( strRECNO個(gè)函數(shù)完成,它們主要用到對(duì)象 XMLDOMINode統(tǒng)管理。服務(wù)器端的管理程序主要針對(duì)這些庫(kù)中記錄的維的aenh() insert Befor() replace Chil) remove Child廂護(hù)包括添加、刪除、修改等。主要方便用戶高效率地管理、更其它一些對(duì)象的相關(guān)方法。新自己的產(chǎn)品信息。實(shí)現(xiàn)這三項(xiàng)功能的原理基本相同通過(guò)5結(jié)束語(yǔ)ⅹ ML DOM提供的AP對(duì)XML文檔樹(shù)中結(jié)點(diǎn)進(jìn)行相應(yīng)操作。同時(shí)們的一個(gè)共同點(diǎn)是都必須首先查詢。例如添加必須充分發(fā)揮傳統(tǒng)本文通過(guò)傳統(tǒng)的DBMS技術(shù)與先進(jìn)的XML技術(shù)相結(jié)合首先查詢部件庫(kù)的存儲(chǔ)位置刪除、修改必須首先查詢滿足條充分發(fā)揮傳統(tǒng)DBMS在數(shù)據(jù)庫(kù)檢索方面的優(yōu)勢(shì)和成熟技術(shù)件的產(chǎn)品記錄。所以檢索是這一部分設(shè)計(jì)的關(guān)鍵而檢索的實(shí)現(xiàn)了網(wǎng)上汽車零部件信息的遠(yuǎn)程采集。系統(tǒng)具有存儲(chǔ)方關(guān)鍵又在于建立科學(xué)的索引機(jī)制。便、穩(wěn)定性強(qiáng)、易于傳輸、擴(kuò)展性好、效率高、檢索具有自身特為了提高系統(tǒng)的查詢效率系統(tǒng)中通過(guò)在后臺(tái)數(shù)據(jù)庫(kù)中色等優(yōu)點(diǎn)。建立索引表的方式來(lái)實(shí)現(xiàn)索引索引表是通過(guò)映射機(jī)制來(lái)實(shí)參考文獻(xiàn)現(xiàn)的每當(dāng)用戶添加一條零件產(chǎn)品信息由中間層程序自動(dòng)抽!](美) Dider martin,等.ⅫM高級(jí)編程.李頡等譯.北京:機(jī)械工業(yè)出版社,2001.233-239取起部件編號(hào)零件編號(hào)、零件名稱和其它重要的信息自動(dòng)形121(美) MICHAEL MORRISON,aaM揭秘M].陸新年等譯成索引條目即實(shí)現(xiàn)映射。并把條目存入后臺(tái)數(shù)據(jù)庫(kù)的索引北京:清華大學(xué)出版社,2001.286-307表中。零部件索引表( LBJSYB沖的索引條目格式如表2所31李景春,王強(qiáng)等,基于DOM的ⅹM文檔支持系統(tǒng)[J.南京大學(xué)刁學(xué)報(bào)(自科版),2000-09,5(36):560-570部件庫(kù)的索引條目格式、示例4]胡朝暉.利用MXM解析XML文本[EB/OL].htp://部件編號(hào)零件編號(hào)零件名softwareworld. com. cn/rv/2001-1/26. htm[5 Lauren W, Arnaud L H, Vidur A, et al. Document Object Model22000懸架www.autopart,org/xs.xml(doM)leVelISpecificationEb/Ol]http://www.w3.org/tr/recDOM- Level-1,1998-10-04維護(hù)的各個(gè)子功能項(xiàng)在實(shí)現(xiàn)時(shí)必須到后臺(tái)數(shù)據(jù)庫(kù)首先61BayT,PadJ, Sperberg C M, Extensible Markup Language(xM)1.0檢索索引表匹配相關(guān)查詢條件。然后打開(kāi)對(duì)應(yīng)的部件庫(kù)SpecificationEb/oLi.http://www.w3.org/tr/rec-Xml,1998操作記錄。一個(gè)典型的在部件庫(kù)中檢索某產(chǎn)品記錄"的函數(shù)段如下7]李志華,施眀輝,孫榮勝基于ⅪML的汽車零部件網(wǎng)站數(shù)據(jù)存儲(chǔ)function Load Doc (I與查詢的實(shí)現(xiàn)[J.無(wú)錫輕工大學(xué)學(xué)報(bào)(自科版),2001,5(88)(上接第61頁(yè))的實(shí)際資源本身隔離。這些資源可能來(lái)自一個(gè)關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)、某種活動(dòng)媒體服務(wù)器或者Wcb服務(wù)器上的一個(gè)靜態(tài)ⅹML.2lV· Apparao,S.Bme,M. Champion,rtal文檔等等。如果想把這些數(shù)據(jù)加載到Java應(yīng)用中我們可中國(guó)煤化xhm0atMdemendation[ EB/OL I以從當(dāng)前眾多的Jaa語(yǔ)言XML解析器中選用一個(gè)通過(guò)它將Level-1. October 1998[3]IBHCNMHGng XMl and XSL with IBMⅹML數(shù)據(jù)裝入一個(gè)DOM文檔最后遍歷文檔將所有這些數(shù)Websphere3.OieB/olI.http://www,redbooksibm.com2000據(jù)轉(zhuǎn)換到我們應(yīng)用系統(tǒng)的對(duì)象模型中。參考文獻(xiàn)[4BrettMclaughLin.LetyourdomdothewalkingEb/Ol].http://www[1 Todd Sundsted. XML and Java tackle enterprise application integration106. ibm. com/developerworks/xml/library/x-dmtrv/index. htmlIeb/ol].http://www.javaworld.conm/javaworld/jw-06-1999/jw2001-8
-
C4烯烴制丙烯催化劑 2020-06-12
-
煤基聚乙醇酸技術(shù)進(jìn)展 2020-06-12
-
生物質(zhì)能的應(yīng)用工程 2020-06-12
-
我國(guó)甲醇工業(yè)現(xiàn)狀 2020-06-12
-
石油化工設(shè)備腐蝕與防護(hù)參考書(shū)十本免費(fèi)下載,絕版珍藏 2020-06-12
-
四噴嘴水煤漿氣化爐工業(yè)應(yīng)用情況簡(jiǎn)介 2020-06-12
-
Lurgi和ICI低壓甲醇合成工藝比較 2020-06-12
-
甲醇制芳烴研究進(jìn)展 2020-06-12
-
精甲醇及MTO級(jí)甲醇精餾工藝技術(shù)進(jìn)展 2020-06-12
