使用Java Swing 創(chuàng)建一個XML編輯器
發(fā)表時間:2024-02-22 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]我想您一定對XML有所了解,說不定您現(xiàn)在還躍躍欲試想寫一段XML文本呢,可是現(xiàn)在能找到的跨平臺的、免費(fèi)的XML編輯器太少了。所以在本文中,我想介紹一下或者說帶您一步一步的開發(fā)一個簡單的XML編輯器,當(dāng)然我們要用到一些最常見的Java 2 Swing組件,不過這些都是免費(fèi)的,有些是JDK中的,有些是...
我想您一定對XML有所了解,說不定您現(xiàn)在還躍躍欲試想寫一段XML文本呢,可是現(xiàn)在能找到的跨平臺的、免費(fèi)的XML編輯器太少了。所以在本文中,我想介紹一下或者說帶您一步一步的開發(fā)一個簡單的XML編輯器,當(dāng)然我們要用到一些最常見的Java 2 Swing組件,不過這些都是免費(fèi)的,有些是JDK中的,有些是可以從網(wǎng)上下載的。我想通過本文,你就可以創(chuàng)建一個屬于你自己的XML編輯器。
先讓我介紹一下本文輯寫的思路。首先我想簡要的討論一下XML和為什么樹型結(jié)構(gòu)比較適合用來顯示XML,然后我們來看一看JAXP API如何建立所需要的XML類的環(huán)境;然后我們將了解用來顯示一個圖形樹的JTree Swing組件;最后,我們將創(chuàng)建一個繼承JTree組件的可以重復(fù)使用的類,可以用來分析一個XML文檔,并把數(shù)據(jù)顯示在一個Jtree中。
說到XML(eXtensible Markup Languge),人們往往把它當(dāng)成是一種新的用于Web瀏覽器中的標(biāo)記語言,就象HTML或CSS一樣。其實(shí),XML是一種數(shù)據(jù)表示語言,它允許你使用一種非常有效的方法來描述你的數(shù)據(jù)。XML能夠使你定義諸如“these three words constitutes a heading”這樣的語句。XML允許你聲明任何類型的數(shù)據(jù),而不是用來把這些數(shù)據(jù)顯示在網(wǎng)頁中。
請看一看下面的XML實(shí)例:
<article>
<header>
<title> 使用Java Swing 創(chuàng)建一個XML編輯器
<subtitle> 第一部分</subtitle>
</title>
<author> Wayne </author>
<header>
<content> 這是正文</content>
</article>
請注意,這些元素和標(biāo)準(zhǔn)的HTML語句是不同的,但是它們看上去比較象HTML,這是因為XML和HTML都是來源于SGML語言。不同的是HTML有預(yù)定義的標(biāo)簽集,而XML的語法則有許多靈活性,它允許你使用表意的標(biāo)記如<author>來括在數(shù)據(jù)兩邊。你還要注意,所有的元素都從屬于根元素(上例中為<article>),有些元素則還有自己的子元素,如<subtitle>就是<title>的子元素。這樣的數(shù)據(jù)組織方式有三個好處:數(shù)據(jù)能夠更加表意,數(shù)據(jù)更加易維護(hù)而且數(shù)據(jù)更加容易作為一個樹的結(jié)構(gòu)表現(xiàn)出來,這就是我們?yōu)槭裁词褂肑Tree對象來顯示XML數(shù)據(jù)的原因。如果你想對XML有更深的了解,請參閱天極網(wǎng)上的相關(guān)教程。
JAXP是一個用于處理XML的Java API,它能夠使應(yīng)用程序分析并且轉(zhuǎn)化XML文檔,它的功能有點(diǎn)象JDBC API,都是把函數(shù)功能抽象成一個個方法。你可以去Apache網(wǎng)站找到最新的Xerces分析器,其中含有最新的JAXP,下載下來以后把它放在你的類目錄中。
使用Java Swing 創(chuàng)建一個XML編輯器
5/28/2001 9:53:53· wayne·yesky