Génération des classes Java Entity depuis un fichier JDL

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.

A propos Pierre Jean

Ingénieur de Recherche CERIS Centre d'Enseignement et de Recherche en Informatique et Systèmes IMT Mines Alès UMR Euromov DHM Plus de détails sur Pierre JEAN
Ce contenu a été publié dans Développement. Vous pouvez le mettre en favoris avec ce permalien.