https://github.com/ghusta/pagila-db-hibernate-reveng
Hibernate Tools RevEng for Pagila DB
https://github.com/ghusta/pagila-db-hibernate-reveng
hibernate-search hibernate-tools java-8 postgresql spring-data-jpa
Last synced: 3 months ago
JSON representation
Hibernate Tools RevEng for Pagila DB
- Host: GitHub
- URL: https://github.com/ghusta/pagila-db-hibernate-reveng
- Owner: ghusta
- Created: 2017-05-22T12:52:03.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2024-02-21T07:57:55.000Z (over 1 year ago)
- Last Synced: 2025-01-06T22:36:01.277Z (5 months ago)
- Topics: hibernate-search, hibernate-tools, java-8, postgresql, spring-data-jpa
- Language: Java
- Size: 107 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Hibernate Tools - Reverse Engineering for Pagila DB (PostgreSQL)
[](https://travis-ci.org/ghusta/pagila-db-hibernate-reveng)
## Maven command
`mvn clean generate-sources -Pgen-hibernate-tools`
As a result, code will be generated in _target/generated-sources/hibernate_.
## Running the database server
You can use a docker container, like this one :
`docker run -d -pxxxx:5432 --name pagila-db mujz/pagila`
## Templates (FreeMarker)
- pojo : **pojo/Pojo.ftl**
- dao (repository) : **dao/JpaRepository.ftl**## Tips
### TODO: Force use of object types for @Id and not primitive types
See _org.hibernate.tool.hbm2x.Cfg2JavaTool.PRIMITIVES_
### Defining sequence mapping
Use something like
```
category_category_id_seq
```
The name of the param must be one of the constants defined here : [SequenceStyleGenerator](https://docs.jboss.org/hibernate/orm/current/javadocs/org/hibernate/id/enhanced/SequenceStyleGenerator.html).
The code generation can be explored there : [org.hibernate.tool.hbm2x.pojo.EntityPOJOClass#generateAnnIdGenerator()](https://github.com/hibernate/hibernate-tools/blob/5.2/src/java/org/hibernate/tool/hbm2x/pojo/EntityPOJOClass.java).## Logging
Add system property :
-Dorg.slf4j.simpleLogger.log.org.hibernate.cfg.reveng=debug
## External references
- [Hibernate Tools](http://hibernate.org/tools/)
- [FreeMarker](http://freemarker.org/)