Sometime we get into a condition in which we need to create POJO classes from an existing database. It could take time if the database has many tables. Instead of manually create them, we could use Hibernate Tool. Hibernate Tools is an eclipse plugin that can be installed from the eclipse marketplace.
In this post, we use Spring Tool Suite (STS) 4 instead of directly use the eclipse version of the IDE. Meanwhile the database we use is PostgreSQL. It should be applicable to any other database.
The steps of using Hibernate Tools is summarized as follow. I append many screenshots on this post in order the steps are easier to follow.
Step 1 : Install Hibernate Tools plugin
To install Hibernate Tools plugin, go to menu
Help > Eclipse Marketplace .
Hibernate Tools in the search field.
Follow the installation step until the installation success and finish. Eclipse will show us a pop up message to restart it once the installation finished.
Step 2 : Create Java Maven project
Before building a connection to the database, we will create a maven project that contains a hibernate configuration file and where the generated code will be placed. The following figures show the maven project configuration setting.
First, ensure we are in the
Java persepective mode. From the menu
File > New > Other… select
Maven Project as the following figure.
Select the checked box of
Create a simple project then press
Group Id and
Artifact Id. Select
jar for the
Packaging option, then click
Create a namespace in the maven project where the generated code will be placed.
The project structure should look like the following picture.
Once the project skeleton constructued, edit the
pom.xml by adding dependencies of the hibernate and database driver. The latest jar version could be found in Maven Repository
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Step 3 : Create Hibernate configuration
Before creating Hibernate configuration file, we need to switch to
Hibernate perspective in the eclipse by opening menu
Window > Perspective > Open Perspective > Other…. Then select
Hibernate on the perspective list.
Once we are in the
Hibernate perspective, we can create Hibernate configuration from menu
File > Hibernate Configuration File (*.cfg.xml)
Placed the configuration file in the directory
src/main/java, then click
On the next dialog wizard, fill the configuration item according to our database specification. The database specification items to fill are database dialect, database driver, connection URL, default schema (if we want to generate for a specific schema, otherwise left it empty if we want to generate for all), username and password. On the dialog wizard, ensure to select the check box of
Create a console configuration option.
Hibernate Configurations pane, the hibernate configuration that has been created should be listed in it. If the created hibernate configuration is not listed, press the
Refresh or Rebuild configuration button in the top right corner of the pane. The generated Hibernate configuration should look like the following figure. We could expand the Database element on the Hibernate configuration to ensure we have a valid database connection.
Step 4 : Run Hibernate code generation
To run Hibernate code generation, ensure we select the active
Hibernate Configuration in the Hibernate configuration pane. Then, open the menu of
Run > Hibernate Code Generation Configuration…
Hibernate Code Generation Configuration, fill the package where the domain class will be in.
Exporter tab, select
Use Java 5 syntax and
Generate EJB3 annotations. In the exporter list option, we can select items in the list that we need. In this post we only select
Domain code that has annotation as Hibernate mapping. Finally click
Run to generate the domain code.
If the annotation does not generated in the domain class, open the
Hibernate Configuration and edit it. Then change the
Hibernate Version to
5.2. Finally run again as we have done on step 4.