美妙而強大的XMLBeans

到處都說XML是未來信息發展的主導!在XML和Java技術的發展前沿,各種各樣的技術相互碰撞着,面對XMLDOM、SAX、JAXB和Castor,XMLBeans有一領天下的霸氣,其XML遊標、XML標誌及XQuery和全面支持W3C XML Schema規範等高級特性,從學習和操作的簡易性與性能的高效性上講,讓其他解析與數據綁定技術無人能敵。最早聽說XMLBeans是在去年BEA公司的Dev2Dev年會上,直到最近才又得以深入接觸,唯相見恨晚矣!

本文暫且通過將XMLBean與傳統解析與數據綁定技術略作比較,稍後再着力墨筆。

1、XMLDOM:在內存中生成整個XML文檔的樹,一旦文檔相當大時,內存佔用將是十分敏感的問題,引起性能的顯著降低。而XMLBean通過增量解組並提供xget方法來訪問內置模式的數據類型,取得了良好的性能。

2、SAX:與DOM相比,對內存要求不同,但SAX要求開發人員爲事件處理程序編寫回調方法,而XMLBean則不需要。

3、Castor:XML JDO的具體實現,比起DOM來說從很大程序上簡化了訪問XML文檔的程序實現,可以回顧前幾篇關於Castor的文章。但Castor並沒有完全技術W3C XML Schema,而XMLBean提供了百分之百的模式支持。

另外:XMLBean的遊標、標專和XQuery等獨創特性以及即時驗證支持,使用其成爲用於各種XML和Java數據綁定時的一種非常強大的工具。

附:使用XMLBean的基本步驟(也可參見它的readme文件)。

一、下載XMLBean1.0.4(2.0版本已有beta版)--機子上要裝Java JDK1.4.X,這個是必要的。

二、解壓下載的zip(jar)文件包,在環境變量中設置XMLBEANS_HOME爲解壓目錄(安裝目錄),再將/lib下的xbean.jar放到classpath中,將/bin目錄添加到path中。

三、在cmd中運行scomp命令,如果出現該命令的幫助信息,則說明可以使用了,它同時提供了在windows和unix平臺下命令。

注:一般來說可能需要修改scomp.dat中的java.exe命令爲本機jdk裏邊/bin目錄下的java.exe,否則它可能默認使用了jre中的java.exe,從而無法正常運行--偶今天下午被這個小問題折騰了好久!

四、將XML Schema模式文件(*.xsd)解析成類和接口,就可以使用這些接口和類來處理XML文檔實例了,哈哈。
   scomp   -out   theJarFileName.jar   theSchemaFileName.xsd

注:不清楚如何編寫Schema文件的話,可以通過 XML Spy等工具自動根據數據庫中的表結構生成XML Schema文件。

五、下面就是在Java程序中使用生成的theJarFileName.jar中的接口和類來處理XML文檔實例了。

一般說來生成的接口都有一個靜態方法的工廠類,包括如下方法:
     (1) newInstance()  :創建這種類型的新實例
    (2)  parse()  : 用於解析真正的XML實例文檔

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章