使用Eclipse Hibernate插件逐步为POJO域Java类和hbm自动生成代码
概述:
在本教程中,我們將使用Eclipse Hibernate工具自動生成域對象和相應的hbm xml文件。 如果您正在處理大型或中型項目,并且開始時有超過5個以上的表,則可能會發現此插件是自動生成映射域對象java文件和相應* .hbm.xml的絕佳工具文件容易。 您可以在項目中輕松使用它們。 對于具有2個或3個表的非常小的項目,您可能需要手動創建這些文件,但是,如果一個表或多個表中有大量字段要處理,則此工具是節省時間和節省時間的工具。
使用的工具:
 1.針對Web開發人員的Eclipse Indigo Java EE IDE 
 2.休眠3 
 3. Hibernate Tools Eclipse插件版本3.5.1 4. Mysql JDBC jar(mysql-connector-java-5.1.23) 
步驟-1:為Eclipse安裝Hibernate插件
 根據您的Eclipse版本從jboss站點安裝hibernate插件。 我使用了Eclipse Indigo版本。 在Eclipse的菜單欄中,轉到“幫助”->“安裝新軟件”,對于Indigo,轉到http://download.jboss.org/jbosstools/updates/indigo/下載Hibernate插件并進行安裝。 
 安裝完成后,您將在“已安裝的軟件”部分中找到它,并在Eclipse中看到新的視角。 
Hibernate的Eclipse透視圖-
步驟2:配置插件以連接到數據庫以生成代碼
 例如,我已經創建了一個動態Web應用程序PersonalPhotoAlbumApp,并已在其中復制了所需的jar文件到WEB-INF / lib文件夾中。 如果您有其他項目,則可以將jar(與Hibernet相關的必需jar文件和mysql連接器jar)保存在項目文件夾或外部文件夾中,但請記住,它應該位于公認的類路徑中。 
 創建項目后,切換到Hibernate透視圖。 然后轉到File-> New->'Hibernate Console Configuration'。 稍后,您的插件將需要此控制臺配置,以便基于數據庫表映射生成代碼。 
單擊“設置”按鈕以創建一個新的hibernate.cfg.xml文件,該文件將存儲您的數據庫連接信息以供插件使用。 要生成域對象或hbm文件,不需要hibernate.cfg.xml文件,因為您可以從下拉列表中選擇其他數據庫配置。 為簡單起見,我遵循了這一步驟。
選擇名稱和路徑以將hibernate.cfg.xml文件存儲在Java / J2EE項目中。 填寫所需的連接信息以連接到數據庫。
如果一切正常,您將在下面看到以下屏幕,您可以看到表格。 我的數據庫“ tctalk_apps_photoalbum”中有兩個表,分別是“相冊”和“ phototbl”,您可以看到該工具正在顯示。 如果在連接數據庫時遇到任何錯誤,請檢查* .cfg.xml文件,以查看是否有錯誤或鍵入您填寫的信息。
步驟3:創建休眠反向工程配置文件
遵循在您的項目中創建reveng.xml的步驟,這將幫助該工具進行反向工程以生成域Java對象(PO??JO類)和相應的* .hbm.xml文件(此文件存儲表字段以及與這些字段的必需映射) POJO)。
如果在左側面板中看不到數據庫架構和表,請單擊“刷新”。 選擇您要生成域代碼的表,然后單擊“包括”以在右側面板中添加。
步驟4:創建休眠代碼生成配置
此配置將使用reveng.xml生成域對象/ POJO和* .hbm.xml文件的Java代碼,并將保留在您要標識的輸出文件夾中。 請遵循以下步驟。
單擊工具欄中的特定于休眠的微小運行圖標,以從菜單中選擇“休眠代碼生成配置”選項。
選擇“新啟動配置”以創建一個新的。 該圖標非常小,帶有“ +”符號。
您需要選擇要在其中生成域POJO java類以及* .hbm.xml文件的軟件包。 還要選擇您在上一步中創建的reveng.xml。
單擊“主”旁邊的下一個選項卡“導出器”,以選中“域代碼”和“休眠XML映射(.hbm.xml)”復選框。
單擊“運行”,您可以在狀態欄中看到它正在運行。
步驟5(可選步驟):分離出POJO類和hbm文件以實現更好的可維護性
以下步驟是可選的。 此步驟只是為了美化項目文件夾和程序包的結構,以實現更好的可維護性。 如果對同一文件夾中的POJO和hbm文件沒有問題,則可以跳過此步驟,直接轉到步驟6,然后開始進行愉快的編碼。 如果您認為需要為Java POJO類保留不同的程序包,并為* .hbm.xml文件保留單獨的文件夾,請執行此步驟。
打開選擇為輸出文件夾的軟件包,您將看到自動生成的類和hbm xml文件。
選擇所有Java POJO類,然后右鍵單擊并選擇Refactor-> Move以將它們移至所需的包。 在我們的案例中,我希望它們位于businessobjects包中,因此將它們移到那里。
移動Java類后,我選擇了每個類并重命名了它們以附加BO,以將它們標記為業務對象類。
由于hbm文件位于不同的程序包中,而java業務對象類位于不同的文件夾中,因此hibernate需要知道這一點。 否則它將找不到它們。 為此,我們需要在hibernate.cfg.xml文件中添加與每個POJO類及其對應的hbm.xml文件相對應的標記。
還打開* .hbm.xml文件,并使用類的完整程序包名稱更改。 對于AlbumBO類,我將Album.hbm.xml文件中的類路徑更改為
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- Generated Apr 22, 2013 1:26:40 PM by Hibernate Tools 3.4.0.CR1 --> <hibernate-mapping><class name="com.tctalk.apps.album.db.businessobjects.AlbumBO" table="album" catalog="tctalk_apps_photoalbum"><id name="albumid" type="java.lang.Integer"><column name="albumid" /><generator class="identity" /></id><property name="albumname" type="string"><column name="albumname" length="55" not-null="true" /></property><property name="albumdesc" type="string"><column name="albumdesc" length="65535" not-null="true" /></property><property name="albumcreatedate" type="date"><column name="albumcreatedate" length="10" not-null="true" /></property></class> </hibernate-mapping>步驟6:從項目中刪除hibernate.reveng.xml反向工程文件
  
翻譯自: https://www.javacodegeeks.com/2013/10/step-by-step-auto-code-generation-for-pojo-domain-java-classes-and-hbm-using-eclipse-hibernate-plugin.html
總結
以上是生活随笔為你收集整理的使用Eclipse Hibernate插件逐步为POJO域Java类和hbm自动生成代码的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: Java7 –回顾
- 下一篇: 平安富盈45天怎么不在了?
