DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML詳解 >> 動態產生XML文檔的幾種方式
動態產生XML文檔的幾種方式
編輯:XML詳解     

當今世界,技術發展迅猛,不論是什麼行業,大多數關鍵數據都是放置於數據庫中進行管理的,一來目前數據庫技術已經相當成熟,二來其管理功能非常強大。以往的數據庫應用,其數據底層結構一般來說都是相對固定,也就是說,開發出來的應用程序是針對具體的數據結構,其應用范疇受到一定限制,開放性較差。

  XML作為一種可擴展性標記語言,其自描述性使其非常適用於不同應用間的數據交換,而且這種交換是不以預先規定一組數據結構定義為前提,因此具備很強的開放性,具有廣闊的應用前景。為了使基於XML的業務數據交換成為可能,就必須實現數據庫的XML數據存取,並且將XML數據同應用程序集成,進而使之同現有的業務規則相結合。開發基於XML的動態應用,如動態信息發布、動態數據交換等,就是要能從數據庫中取出數據,並動態產生XML文檔。當前動態產生XML文檔主要有以下幾種方式:

  由數據庫直接產生 在這一方面,Oracle和Microsoft走在其他廠商的前面。Oracle做為全球第一大數據庫及數據庫應用解決方案提供廠商,早在1999年就率先推出支持XML的數據庫產品Oracle 8i。Microsoft在2000年1月宣稱其下一版本SQL Server(代號為Shiloh),將是一個完全支持XML的產品,利用該產品,用戶可以在Web浏覽器下輸入一個URL地址,即可訪問SQL Server數據庫,而返回的結果可以是一個XML文檔。另外,它還允許通過輸入樣式參數,指定樣式信息,以便在浏覽器中輸出豐富的頁面。一個典型的URL如下所示:href = http: // localhost / Northwind ? sql = select + firstname,lastname + from + employees + for + XML + auto。

  由Web中間件產生 當Web服務器收到請求,就由中間件進行數據庫查詢,然後將查詢結果轉化為XML格式。現在有一些工具提供了XML與數據庫的連接過程大都遵循這樣的步驟。下面是一個利用ASP直接生成XML文檔的例子。

  <%@ language="VBScript" %>
  <?XML version="1.0" encoding="gb2312"?>
  <?XML:stylesheet type="text/xsl" href="roster.xsl"?>
  <roster>————下面連接數據庫————
  <%
  set cConn = Server.CreateObject("ADODB.Connection")
  call cConn.Open("DSN","USER", "PWD")
  set rs = cConn.Execute("SELECT DISTINCT * FROM roster")
  Do While Not rs.EOF %>————下面產生XML————
  <Record>
  <Name><%=trim(rs("name"))%></Name>
  <NativePlace><%=trim(rs("NativePlace"))%></NativePlace>
  <Age><%=trim(rs("Age"))%></Age>
  <Telephone><%=trim(rs("Telephone"))%></Telephone>
  </Record>
  <% rs.MoveNext
  Loop
  rs.Close
  set rs=nothing
  set cConn=nothing
  %>
  </roster>

  這種方式已經在大富翁論壇(http://www.Delphibbs.com)上得到了應用,大富翁論壇也制作了離線浏覽器,其實質就是用ASP查詢返回的XML數據文檔在應用程序中進行處理。

  由其他應用程序產生 正是XML自描述性使其非常適用於不同應用間的數據交換,基於XML數據交換的系統之間交換數據就是一個產生、傳輸和處理XML文檔的過程,因此許多編程工具已經發布了支持XML的新版本,在Delphi 6中已經推出支持XML數據交換的一系列控件,開發數據交換應用程序已經不再是以前大家可望不可及的事了,當然這都歸功於XML的出現。

  從整體上講,XML定義了應用間傳遞數據的結構,而且這種結構的描述不是基於二進制的、只能由程序去判讀的代碼,而是一種簡單的、能夠用任何編輯器讀取的文本。利用這種機制,程序員可以制定底層數據交換的規范,然後在此基礎上開發整個系統的各個模塊,而各模塊之間傳輸的數據將是規范的符合既定規則的數據。另外,XML還允許為特定的應用制定特殊的數據格式,並且非常適合於在服務器與服務器之間傳送結構化數據。總之,在不久的將來XML必將成為互聯網中一顆璀璨的明星。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved