前言:在IDEA中,通过相关插件,可以利用Hibernate逆向生成数据表对应的实体类。具体操作及注意事项见本篇随笔。
1.创建一个基于maven的hibernate工程。并在工程中添夹hibernate核心配置文件hibernate.cfg.xml,其工程结构如下图所示。
其中,hibernate.cfg.xml的配置如下:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
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&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>
注意:该配置文件中对数据库的相关信息进行能配置,在后续逆向生成实体类的时候,又会生成数据库信息,所以建议在使用插件生成实体类时,将数据库配置信息注释,实体类生成完后,在将其打开。
2.在IDEA中添加数据源,具体操作如下。
1)从View→Tool 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日,凌晨。