| 導購 | 订阅 | 在线投稿
分享
 
 
 

使用Quick在Java對象和XML之間進行轉換

來源:互聯網網民  2008-05-31 12:10:38  評論

將 Java 對象與 XML 數據集成

級別:中級

Brett McLaughlin(brett@oreilly.com)

作家兼編輯,O′Reilly and Associates

Quick 是一種開放源碼數據綁定框架,著重于運行時轉換。這篇介紹性文章向您演示了如何使用這種框架來快速且方便地將您的 Java 數據轉換成 XML 文檔,而無需其它數據綁定框架所需的類生成語義。本文還包括了大量的代碼樣本。

近幾年來,XML 的確給編程世界帶來了巨大沖擊。然而,XML 應用程序的複雜性(從一開始就很複雜)在最近幾年中並沒有減少多少。開發人員仍要花幾個星期的時間(即使不是幾個月)來學習複雜的 XML 語義和 API(如 SAX 和 DOM)來操作 XML。然而,在過去的 6 個月到 12 個月中,相對于那些較複雜的 API,另一種新的比較簡單的 XML API(稱爲 Quick)已經越來越受到歡迎。

數據綁定答應您直接在 Java 對象和 XML 之間映射,而不必處理 XML 屬性和元素。另外,它答應 Java 開發人員使用 XML,而無需花時間去鑽研 XML 規範。Quick 是這樣一種數據綁定 API,它是使 Java 應用程序適合業務用途的項目。

安裝與設置

在鑽研使用 Quick 的細節之前,您需要下載和安裝該項目。請訪問 Quick 的網站(請參閱參考資料),然後選擇 Download。然後,您可以下載該項目的 .zip 文件;在我寫本文時,最新的可用版本是 Quick 4.3.1,可通過 Quick4.3.1.zip 文件得到。

解壓縮 .zip 文件以創建 Quick 分發版(distribution)。清單 1 顯示了目錄層次結構:

清單 1. Quick 目錄結構

Quick4

+-- JARs

+-- BATs

+-- Doc

+-- dtdParserSrc

+-- DTDs

+-- examples

+-- JARs

+-- QDMLs

+-- QJMLs

+-- quickSrc

+-- UTILs

+-- utilSrc

+-- XSLs

開發人員最關注的兩個目錄是 Quick4/BATs(它應該被添加到 PATH 環境變量)和 Quick4/JARs(它包含應該被添加到 CLASSPATH 環境變量的 jar 文件)。明確地講,您需要將 dtdparser115.jar、Quick4rt.jar 和 Quick4util.jar 添加到當前類路徑中。您還需要一個 SAX 解析器實現,如 Apache 項目的 Xerces-J(請參閱參考資料)。同樣,將 xerces.jar 或您自己喜愛的解析器添加到類路徑中。

Java 類和 XML 文檔

數據綁定將集中于 XML 和 Java,所以讓我們研究如何把這些 XML 文檔和 Java 類與 Quick 聯系起來。爲了說明這些問題,讓我們研究幾個簡單的 Java 類和一個簡單的 XML 文檔。

簡單的 XML 文檔

首先,清單 2 顯示了一個小的 XML 文檔。我已經使事情簡單化,因此您讀完 10 個或 15 個 Java 類之後,不會不理解概念。

清單 2. 表示一個人的 XML

<?xml version="1.0"?>

<!DOCTYPE person SYSTEM "person.dtd">

<person>

<firstName>Gary</firstName>

<lastName>Greathouse</lastName>

<address type="home">

<street>10012 Townhouse Drive</street>

<city>Waco</city>

<state>TX</state>

<zipCode>76713</zipCode>

</address>

<phoneNumber>

<type>home</type>

<number>2545550287</number>

</phoneNumber>

<phoneNumber>

<type>work</type>

<number>2545556127</number>

</phoneNumber>

</person>

雖然清單 2 不是有關如何編寫 XML 的主要示例,但其中有幾個關于 Quick 的要點值得注重。您還需要研究清單 3 中所示文檔的 DTD。

清單 3. person.xml 的 DTD

<!ELEMENT person (firstName, lastName, address+, phoneNumber+)>

<!ELEMENT firstName (#PCDATA)>

<!ELEMENT lastName (#PCDATA)>

<!ELEMENT address (street, city, state, zipCode)>

<!ATTLIST address

type (home work other) "home"

>

<!ELEMENT street (#PCDATA)>

<!ELEMENT city (#PCDATA)>

<!ELEMENT state (#PCDATA)>

<!ELEMENT zipCode (#PCDATA)>

<!ELEMENT phoneNumber (type, number)>

<!ELEMENT type (#PCDATA)>

<!ELEMENT number (#PCDATA)>

Java 類

在許多數據綁定實現中,您現在需要生成 Java 源文件來表示這種類型的 XML 文檔。

 
特别声明:以上内容(如有图片或视频亦包括在内)为网络用户发布,本站仅提供信息存储服务。
 
  將 Java 對象與 XML 數據集成 級別:中級 Brett McLaughlin(brett@oreilly.com) 作家兼編輯,O′Reilly and Associates Quick 是一種開放源碼數據綁定框架,著重于運行時轉換。這篇介紹性文章向您演示了如何使用這種框架來快速且方便地將您的 Java 數據轉換成 XML 文檔,而無需其它數據綁定框架所需的類生成語義。本文還包括了大量的代碼樣本。 近幾年來,XML 的確給編程世界帶來了巨大沖擊。然而,XML 應用程序的複雜性(從一開始就很複雜)在最近幾年中並沒有減少多少。開發人員仍要花幾個星期的時間(即使不是幾個月)來學習複雜的 XML 語義和 API(如 SAX 和 DOM)來操作 XML。然而,在過去的 6 個月到 12 個月中,相對于那些較複雜的 API,另一種新的比較簡單的 XML API(稱爲 Quick)已經越來越受到歡迎。 數據綁定答應您直接在 Java 對象和 XML 之間映射,而不必處理 XML 屬性和元素。另外,它答應 Java 開發人員使用 XML,而無需花時間去鑽研 XML 規範。Quick 是這樣一種數據綁定 API,它是使 Java 應用程序適合業務用途的項目。 安裝與設置 在鑽研使用 Quick 的細節之前,您需要下載和安裝該項目。請訪問 Quick 的網站(請參閱參考資料),然後選擇 Download。然後,您可以下載該項目的 .zip 文件;在我寫本文時,最新的可用版本是 Quick 4.3.1,可通過 Quick4.3.1.zip 文件得到。 解壓縮 .zip 文件以創建 Quick 分發版(distribution)。清單 1 顯示了目錄層次結構: 清單 1. Quick 目錄結構 Quick4 +-- JARs +-- BATs +-- Doc +-- dtdParserSrc +-- DTDs +-- examples +-- JARs +-- QDMLs +-- QJMLs +-- quickSrc +-- UTILs +-- utilSrc +-- XSLs 開發人員最關注的兩個目錄是 Quick4/BATs(它應該被添加到 PATH 環境變量)和 Quick4/JARs(它包含應該被添加到 CLASSPATH 環境變量的 jar 文件)。明確地講,您需要將 dtdparser115.jar、Quick4rt.jar 和 Quick4util.jar 添加到當前類路徑中。您還需要一個 SAX 解析器實現,如 Apache 項目的 Xerces-J(請參閱參考資料)。同樣,將 xerces.jar 或您自己喜愛的解析器添加到類路徑中。 Java 類和 XML 文檔 數據綁定將集中于 XML 和 Java,所以讓我們研究如何把這些 XML 文檔和 Java 類與 Quick 聯系起來。爲了說明這些問題,讓我們研究幾個簡單的 Java 類和一個簡單的 XML 文檔。 簡單的 XML 文檔 首先,清單 2 顯示了一個小的 XML 文檔。我已經使事情簡單化,因此您讀完 10 個或 15 個 Java 類之後,不會不理解概念。 清單 2. 表示一個人的 XML <?xml version="1.0"?> <!DOCTYPE person SYSTEM "person.dtd"> <person> <firstName>Gary</firstName> <lastName>Greathouse</lastName> <address type="home"> <street>10012 Townhouse Drive</street> <city>Waco</city> <state>TX</state> <zipCode>76713</zipCode> </address> <phoneNumber> <type>home</type> <number>2545550287</number> </phoneNumber> <phoneNumber> <type>work</type> <number>2545556127</number> </phoneNumber> </person> 雖然清單 2 不是有關如何編寫 XML 的主要示例,但其中有幾個關于 Quick 的要點值得注重。您還需要研究清單 3 中所示文檔的 DTD。 清單 3. person.xml 的 DTD <!ELEMENT person (firstName, lastName, address+, phoneNumber+)> <!ELEMENT firstName (#PCDATA)> <!ELEMENT lastName (#PCDATA)> <!ELEMENT address (street, city, state, zipCode)> <!ATTLIST address type (home work other) "home" > <!ELEMENT street (#PCDATA)> <!ELEMENT city (#PCDATA)> <!ELEMENT state (#PCDATA)> <!ELEMENT zipCode (#PCDATA)> <!ELEMENT phoneNumber (type, number)> <!ELEMENT type (#PCDATA)> <!ELEMENT number (#PCDATA)> Java 類 在許多數據綁定實現中,您現在需要生成 Java 源文件來表示這種類型的 XML 文檔。
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 
 熱帖排行
 
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有