作者: 陶剛編譯
非常感謝最近發(fā)布的Hibernate 3中的XML持久性特性,Java開(kāi)發(fā)者現在擁有了一個(gè)框架組件,它為易于實(shí)現的對象關(guān)系(OR)和XML持久性提供了高效的和一致的方法。
Hibernate的易用性、高性能和對象關(guān)系持久性等高級特性給IT界帶來(lái)了很大的驚喜。
Hibernate的最新版本(版本3,3月29日發(fā)布的)給產(chǎn)品API帶來(lái)了一個(gè)重要的新特性:XML持久性。有了Hibernate 3之后,Java應用程序開(kāi)發(fā)者可以輕易地把XML文檔合并到關(guān)系型數據庫中。
這個(gè)新特性應該明確地告訴已有的Hibernate開(kāi)發(fā)者,因為它也遵循POJO(純的舊Java對象)相同的一致性方法,需要學(xué)習的知識最少。XML持久性的優(yōu)點(diǎn)也應該介紹給新用戶(hù)。本文講解的是Hibernate 3持久性方法。
XML持久性為什么重要
大多數大型商業(yè)數據庫都支持某種形式的本地XML持久性。由于XML持久性是一個(gè)相對較新的機制--即使對大型廠(chǎng)商也是如此,這個(gè)領(lǐng)域中的標準還在不斷地浮現。其結果是,為了把無(wú)處不在的關(guān)系型持久性機制與日益增長(cháng)的XML解決方案集成在一起,架構師必須依賴(lài)廠(chǎng)商特定的特性或者實(shí)現定制的XML持久性框架組件。這兩個(gè)選擇都沒(méi)有太大的吸引力。廠(chǎng)商特定的特性不是普及的,因為可能產(chǎn)生廠(chǎng)商封鎖(lock-in),而定制的框架組件實(shí)現可能耗費大量的時(shí)間和財力,導致代碼難于維護。
在OR(對象關(guān)系)持久性方面,Hibernate XML持久性是一個(gè)自然而然的解決方案。它可以跨越Hibernate支持的所有關(guān)系型平臺(如虛擬的或真實(shí)的關(guān)系型平臺)移動(dòng),允許自由的遷移對象、基于XML的應用程序和集成解決方案而不用擔心下層的關(guān)系型實(shí)現方法。
體系結構的細節信息
Hibernate是一個(gè)良好架構的框架組件,它無(wú)縫地利用了本地的環(huán)境,不需要用戶(hù)進(jìn)行任何特殊的干涉或安裝操作。從一個(gè)數據庫切換到另外一個(gè)數據庫通常只需要改變驅動(dòng)程序,并配置Hibernate(在線(xiàn)配置設置信息)來(lái)使用另外一種數據庫語(yǔ)言。
Hibernate利用dom4j框架組件進(jìn)行XML的分析和維護。如果需要完全利用Hibernate的XML特性,你就必須對dom4j非常熟悉。一般來(lái)說(shuō),你會(huì )發(fā)現dom4j比Java提供的JAXP或與JAXP兼容的XML分析器要容易使用一些。它要求我們學(xué)習的相關(guān)知識較少,并且利用最少的dom4j知識你就能夠高效率地使用Hibernate XML持久性。
聯(lián)系客服