剖析Hibernate Extensions
Hibernate還是比較常用的,于是我研究了一下Hibernate Extensions,在這里拿出來和大家分享一下,希望對大家有用。
Hibernate是一個開放源代碼的對象關系映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數據庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成數據持久化的重任。
通過Hibernate項目中提供的幾個命令行工具(他們也被當作項目的一部分不斷得到維護),還有XDoclet,Middlegen和AndroMDA內置的對Hibernate的支持,可以在幾個不同的環境(SQL,java代碼,xml映射文件)中進行相互轉換(roundtrip)。
Hibernate的主發行包中附帶了最重要的工具(甚至在Hibernate內部也可以快速調用這個工具):從映射文件到DDL schema的生成器(也就是SchemaExport和hbm2ddl)
Hibernate項目直接提供的其他工具在一個單獨的發行包中發布,Hibernate Extensions。這個發行包包含了下列任務的工具:
◆從映射文件到Java源代碼的生成器(也就是CodeGenerator,hbm2java)
◆從已編譯的Java類或者帶有XDoclet標記的Java源代碼生成映射文件(它們是MapGenerator,class2hbm)
實際上Hibernate Extensions里面還有一個工具:ddl2hbm。但是它已經被廢棄了,已經不再被維護了。Middlegen完成了同樣的任務,并且更加出色。
對Hibernate提供支持的第三方工具有:
◆Middlegen (從現有的數據庫schema中生成映射文件)
◆AndroMDA ( 使用MDA思想(Model-Driven Architecture ,模型驅動體系)的代碼生成器,它從UML圖和其XML/XMI等價形式中生成持久化類的代碼)
這些第三方工具沒有在這篇指南中說明。請查閱Hibernate 網站得到關于它們目前的情況。(Hibernate主發行包中有關于整個網站的快照)
【編輯推薦】


















