在 Java 領(lǐng)域 XML 文件的技術(shù)大致分為兩類:XML API 和 OXMapping.XML API 是 XML 處理的基礎(chǔ),可選技術(shù)包括JDOM,Dom4j等;OXMapping 是 Object-XML Mapping 的簡稱,這種技術(shù)隱藏了 XML 底層操作的細節(jié),可以將 XML 文件映射成一個 JavaBean 對象,也可以把一個 JavaBean 對象保存成一個 XML 文件,可選技術(shù) XStream 、 Digester 、 Castor 等。 XML API 和 OXMapping 的關(guān)系類似于 JDBC 和 ORMaping 的關(guān)系, OXMapping 內(nèi)部實現(xiàn)使用 XML API 來完成,兩種實現(xiàn)技術(shù)從不同的層面實現(xiàn)了 XML 的處理。
XML API
此類 XML 處理技術(shù)中最流行的莫過于DOM4J 了,DOM4J 是一個非常非常優(yōu)秀的Java XML API,具有性能優(yōu)異、功能強大和極端易用使用的特點,同時它也是一個開放源代碼的軟件。如今你可以看到越來越多的 Java 軟件都在使用 DOM4J 來讀寫 XML,特別值得一提的是連 Sun 的 JAXM 也在用 DOM4J
OXMapping
使用 XML API 解析是略顯煩瑣的,受 ORMapping 技術(shù)的啟發(fā),人們發(fā)明了 OXMapping 技術(shù),使用 OXMapping 技術(shù),我們可以將 XML 文件映射成一個 JavaBean 對象,也可以把一個 JavaBean 對象保存成一個 XML 文件,這大大簡化了我們的開發(fā)工作量,使得開發(fā)人員能更多的關(guān)注應用層面的東西。
開源世界中涌現(xiàn)出很多 OXMapping 框架,包括 XStream 、 Digester 、 Castor 等。 其中Digester 是“開源名牌” Apache 下的子項目,網(wǎng)上可以參考的資料很多。