在Intellij IDEA下通過Hibernate逆向生成實體類


前言:在IDEA中,通過相關插件,可以利用Hibernate逆向生成數據表對應的實體類。具體操作及注意事項見本篇隨筆。


1.創建一個基於maven的hibernate工程。並在工程中添夾hibernate核心配置文件hibernate.cfg.xml,其工程結構如下圖所示。

其中,hibernate.cfg.xml的配置如下:

 1 <?xml version='1.0' encoding='utf-8'?>
 2 <!DOCTYPE hibernate-configuration PUBLIC
 3         "-//Hibernate/Hibernate Configuration DTD//EN"
 4         "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
 5 <hibernate-configuration>
 6     <session-factory>
 7 
 8         <!-- 主要三部分配置-->
 9         <!-- 1.配置數據庫信息,必須的-->
10         <property name="connection.url">jdbc:mysql://localhost:3306/hibernatestudy?useUnicode=true&amp;characterEncoding=UTF-8</property>
11         <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
12         <property name="connection.username">root</property>
13         <property name="connection.password"></property>
14 
15         <!-- 2.配置hibernate信息,可選的-->
16 
17         <!-- 輸出底層的sql語句-->
18         <property name="hibernate.show_sql">true</property>
19 
20         <!-- 對底層sql進行格式化-->
21         <property name="hibernate.format_sql">true</property>
22 
23         <!--配置數據的方言,如mysql中limit
24         oracle的rownum-->
25         <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
26 
27         <property name="hibernate.current_session_context_class">thread</property>
28 
29         <!-- 3.把映射文件配置到核心文件中,必須的-->
30 
31     </session-factory>
32 </hibernate-configuration>
View Code

注意:該配置文件中對數據庫的相關信息進行能配置,在后續逆向生成實體類的時候,又會生成數據庫信息,所以建議在使用插件生成實體類時,將數據庫配置信息注釋,實體類生成完后,在將其打開。

2.在IDEA中添加數據源,具體操作如下。

1)從ViewTool Windows→DataBase

2)在DataBase窗口中,進行如下操作。

 

注:筆者這里選擇MySQL數據庫,也可根據具體情況,選擇相應數據庫。

3)對數據相關信息進行配置。

注:注意圖中紅框的內容。

配置成功后,點擊測試彈出如下對話框。

4)打開Persistence選項:View→Tool Windows→Persistence

5)在hibernateGen上右鍵,進行如下操作。

6)在彈出的對話框中進行如下操作即可。

 7)最后生成的實體類與對應xml文件如下圖。

至此,在IDEA下,通過Hibernate逆向生成實體類操作完成。


by Shawn Chen,2018.3.16日,凌晨。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM