計算機二級考試java輔導:重新設計、模塊化JARS及重構的緩存系統(tǒng)

字號:

Hibernate是一個基于Java的對象/關系(O/R)映射框架,今天發(fā)布了3.3版。InfoQ采訪了項目Steve Ebersole以了解該發(fā)布的一些情況及它向Hibernate增加的新特性。
    Hibernate 3.3主要的新特性包括:
    重新設計、模塊化JARs——現(xiàn)在有很多定義良好的JARs,而不是一個大的JAR文件——這使得用戶可以輕松了解依賴關系并將其最小化,同時還使得組織可以定制Hibernate,移除不需要的部分。
    基于Maven的構建——現(xiàn)在Hibernate使用Apache Maven構建系統(tǒng)進行構建。
    修補的緩存SPI——根據(jù)反饋重構了緩存系統(tǒng)以對不同的緩存區(qū)域的特性進行精細控制。
    JBoss Cache 2.x集成——基于新的緩存SPI,現(xiàn)在可以輕松集成JBoss Cache 2.x。
    Ebersole還詳細說明了新的緩存系統(tǒng)和JBoss Cache集成:
    SPI的主要變化圍繞著如何在特定目的下構建緩存區(qū)域而展開?;旧螲ibernate需要緩存區(qū)域完成四個不同的目的: 實體數(shù)據(jù)、集合數(shù)據(jù)、查詢結果及時間戳更新。以前的SPI試圖以單一方式處理這些不同類型數(shù)據(jù);本質(zhì)上它試圖以普遍的方式來對待數(shù)據(jù)緩存而不管所存儲數(shù)據(jù) 的特性。但是在實踐中我們發(fā)現(xiàn)很多時候緩存集成器需要考慮到那些不同特性。例如在集群緩存中,讓實體和集合數(shù)據(jù)及查詢和時間戳更新區(qū)域同時失效或許很有意 義。如果不基于區(qū)域名稱采取一些手段的話,以前的SPI是不可能處理這種混合匹配的。新的SPI使這些區(qū)別變得清晰明了。例如有一個叫做 “buildEntityRegion”或者“buildCollectionRegion”的方法,那么緩存集成器就可以確定特定區(qū)域的數(shù)據(jù)類型是可以 持有并構建一個恰當?shù)呐渲煤玫木彺?區(qū)域的。