Je trouve très pratique pour définir les entités l’outil en ligne de Jhipster JDL-Studio.
Prenons une application avec plusieurs liaisons OneToMany d’une liste de recette dont chaque recette a une liste de commentaires et une liste d’ingrédients.

À partir du fichier jhipster-jdl.jdl téléchargé depuis le JDL Studio, je souhaite fabriquer les entités en Java pour les intégrer dans un développement.
Je n’ai pas trouvé toutes les options d’automatisation, mais en ligne de commande après avoir installé Jhipster, on peut lancer les 2 lignes suivantes dans un dossier contenant le fichier jhipster-jdl.jdl.
La première permet de fabriquer le projet en répondant à 8 questions par validation automatique.
jhipster --skip-cache --skip-git --skip-install --skip-prompts --skip-client --skip-user-management --db sql --skip-checks --skip-fake-data --base-name App --application-type microservices --skip-checks
Les questions seront validées par la touche « entrée » automatiquement :
? What is your default Java package name? com.mycompany.myapp ? Which *type* of database would you like to use? SQL (H2, PostgreSQL, MySQL, MariaDB, Oracle, MSSQL) ? Which *production* database would you like to use? PostgreSQL ? Which *development* database would you like to use? H2 with disk-based persistence ? Which cache do you want to use? (Spring cache abstraction) Ehcache (local cache, for a single node) ? Do you want to use Hibernate 2nd level cache? Yes ? Would you like to use Maven or Gradle for building the backend? Maven ? Which other technologies would you like to use?
La seconde commande va fabriquer les entités en Java depuis le fichier jhipster-jdl.jdl :
jhipster jdl jhipster-jdl.jdl --skip-client
Repondez-yes aux 2 questions d’overwrite sans inquiétudes, nous n’allons pas exploiter d’autres fonctions que la génération des entités.
Vous trouverez dans le dossier src/main/java/com/mycompany/myapp/domain/ les fichiers java des entités avec les liaisons réalisées et les propriétés créées.
Il s’agit d’une utilisation d’une toute petite fonctionnalité de Jhipster mais je trouve cela très pratique.