eclipse從數據庫逆向生成Hibernate實體類

做項目必然要先進行數據庫表設計,然後根據數據庫設計建立實體類(VO),這是理所當然的,但是到公司裏做項目後,讓我認識到,沒有說既進行完數據庫設計後還要再“自己”建立一變VO。意思是,在項目設計時,要麼根據需求分析建立實體類,由正向生成數據庫表;要麼就先進行數據庫表設計,再逆向生成實體類。沒有說進行完任意一方的設計後再去花時間去自己匹配建立另一方的設計。

原因是:

1. 1.5倍工作量,浪費時間。(時間對公司來說很重要)

2. 無法保證兩邊映射一致。因爲兩邊都是自己設計的,那麼就需要人爲保證映射關係統一,會有隱患。

3. 開發、維護上都不利。因爲如果任意一方因某些原因需要改用,那麼經常要兩邊都要改,這樣的話映射不一致的可能性不僅更大,而且效率低下。而如果利用正逆向工程的話,則很容易解決。

所以,因項目原因我便研究了下由數據庫逆向生成hibernate實體類的方法。

在Myeclipse中,正逆向工程操作比較簡單,而如果是eclipse的話,會比較麻煩,因爲必須要先配置下Hibernate環境(同理如果要生成其他持久化層框架的實體類,也需要先配置)。

有關eclipse配置Hibernate環境的方法:

同樣選擇Eclipse–>”Help”,這裏選擇”Eclipse MarketsPlace”這個菜單,在搜索框中,輸入“Hibernate Tools” 點擊“Go”搜索,找到如下的一條記錄(Hiberntate Tools 是JBoss的一款工具),選擇“Install”安裝。這裏我們只需要“Hibernate Tools”,如下圖一步一步完成安裝。安裝完成後會彈出兩個對話框(忘記截圖了),點擊確認即可,重新啓動Eclipse。

那麼下面講述正題:如何從數據庫逆向生成Hibernate實體類

1. 首先,要在eclipse中採用自帶的數據庫管理器(Data Management),連通你的數據庫:

 

然後選擇數據庫,這裏用的Oracle,然後給個名字,如MyOracle。

點擊下圖中按鈕,新建一個數據庫驅動的配置。

選擇數據庫版本,這裏是oracle 10g版本,可以爲該配置另起個名字。

然後選擇相應數據庫版本的jar包。

下面就是依據自身情況填寫數據庫連接配置了。

接下來,完善Properties下的General選項卡內容,同樣是連接數據庫的信息,配置完後點擊Test Connection按鈕測試是否能連通數據庫。

然後點擊Next,再確認無誤後,單擊Finish。

之後Data Management就會出現MyOracle的數據庫資源管理器,發生變化如下說明數據庫配置成功。

2. 生成hibernate實體類

打開Hibernate Configurations窗口。

然後在打開窗口右擊,點擊Add Configuration…

Project選擇項目(test),Database connection選擇剛剛配好的MyOracle(其實可以直接選擇[Hibernate configured connection]通過Hibernate配置文件連接數據庫,但是通過這種方式並不一定能成功,單獨採用Data Management也同樣不一定成功,原因不是很清楚,所以最後採用Data Management + Hibernate配置文件的結合方式,這樣就比較保險啦

在項目(test)內任意位置新建Hibernate的相關配置文件(hibernate.properties和hibernate.cfg.xml)。

新建hibernate.properties:

新建hibernate.cfg.xml:

返回Edit Configuration窗體後,選擇Common選項卡中Encoding選擇UTF-8,其他默認即可,點擊OK按鈕

這樣Hibernate Configuration就添加了一個配置信息,如下圖

在eclipse菜單欄中的工具欄的空白處右擊鼠標,選擇Customize Perspective

彈出如下窗體後,依照圖中選擇Command Groups Availability選項卡,勾選Hibernate Code Generation,然後單擊確定。

之後工具欄就會出現相應按鈕。

單擊該按鈕,並選擇圖中Hibernate Code Generation Configurations

然後彈出如下該窗口,按如下圖操作,右擊後選擇New

彈出如下窗體,選擇輸出的項目地址,填寫包名,勾選Reverse engineer from JDBC Connection,然後創建hibernate.reveng.xml

創建hibernate.reveng.xml:

Console configuration選擇剛剛配置好的hibernate,點擊Refresh按鈕,就會出現數據庫的全部schema,找到你的數據庫,然後將其Include到右側窗口裏,然後點擊Finish按鈕完成hibernate.reveng.xml的創建。

返回後選擇Exporters選項卡,勾選Domain code和Hibernate XML Mappings,然後點擊Run按鈕

最終生成效果如下:

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