當今企業提倡的是隨需而變,因此需要在儘可能短的時間分析中繼資料來響應這些變化的巨大挑戰。此 外,如何提前預知公司專屬應用程式中的潛在問題,如客戶端註冊量、訂單量的浮動等等,都對企業制定計劃至關重 要,因此我們需要對中繼資料進行及時的收集分析。 EJB3 作為當前的主流技術之一,提供了一系列的技術 點來支援開發人員更好的操作 JavaBean,使得對 JavaBean 的控制更加簡單,同時,JAXB 提供了對 JavaBean 與 XML 之間的相互轉換。
如我們所知,所有在 WebSphere Application Server 的應用都是基於 JavaBean 來進行資料的互動 和傳遞,因此我們考慮結合使用 EJB3 的新技術點和 JAXB 來實現一種通用的技術,利用 JAXB 來實現對 EJB3 應用程式的配置,以達到監控 JavaBean 中業務資料的目的。
JAXB 技術簡介
JAXB(Java Architecture for XML Binding) 是一個業界的標準,是一項可以根據 XML Schema 產生 Java 類的技術。該過程中,JAXB 也提供了將 XML 執行個體文檔反向產生 JavaBean 的方法,並能將 JavaBean 的內容重新寫到 XML 執行個體文檔。從另一方面來講,JAXB 提供了快速而簡便的方法將 XML 模式 綁定到 Java 表示,從而使得 Java 開發人員在 Java 應用程式中能方便地結合 XML 資料和處理函數。
本文用到了 JAXB 中將 JavaBean 通過 Annotation 序列化成 XML 的功能,JAXB 有如下重要的 Annotation,對於每個 Annotation 在後文中將做詳細介紹。
@XmlAccessorType
@XmlAttribute
@XmlElement
@XmlElements
@XmlRootElement
@XmlTransient
@XmlValue
下圖給出了 JAXB 的體系架構:
如圖所示,JAXB 通過“綁定編譯器”(Binding Compiler) 簡化了 Java 程式對 XML 文檔的訪問,然 後將 XML 文檔以 JavaBean 的格式展現出來。
同時,JAXB 提供相應的 API 實現了對 XML 文檔與樹形內容對象之間的相互轉換,該樹形對象內容相 比於 XML 文檔來說更有利於節省記憶體使用量。
圖 1. JAXB 體系架構圖