Générer DDL pour JPA 2.0 avec EclipseLink
J'ai créé mon modèle de classes avec des annotations JPA 2.0. Au moment de l'exécution, je vais utiliser EclipseLink 2.2.0, mais j'ai bien fait attention à utiliser uniquement pur des annotations JPA dans mes classes de modèle.
Maintenant, comment puis-je générer le schéma DDL pour la base de données ?
Je veux utiliser le EclipseLink API pour générer le DDL des classes, mais pas au moment de l'exécution. Au lieu de cela, je veux une classe Java pour fonctionner sur la ligne de commande et les sorties qui le DDL. Ce ce mec n'a pour Hibernateje veux pour EclipseLink.
Je voudrais aussi se contenter d'une tâche Ant ou certains plugin Maven.
Aussi, j'ai choisi le nom de mon fichier jpa.xml au lieu de persistence.xml; des points de bonus si votre solution de comptes pour cela. Sinon, je vais renommer mon fichier persistence.xml.
source d'informationauteur Leonel
Vous devez vous connecter pour publier un commentaire.
Vous trouverez vos réponses dans les EclipseLink de la Documentation, plus précisément dans la section intitulée À l'aide de EclipseLink JPA Extensions pour Génération de Schéma.
Là, vous trouverez qu'il ya une propriété appelée
eclipselink.ddl-generation
avec les valeurs possibles commeNONE | CREATE_ONLY | DROP_AND_CREATE
.Vous y trouverez une propriété supplémentaire nommé
eclipselink.ddl-generation.output-mode
dont la documentation est dans cette même page.Il vous permettra de contrôle que vous voulez juste pour générer un script ou fait exécuter les DDL sur la base de données.
J'espère que ça aide!
Je sais que c'est un peu tard mais j'ai été aux prises avec le même problème. Ce que j'ai trouvé après avoir fait les configurations des paramètres tels que la "eclipselink.ddl-génération", puis j'ai accroché le code suivant dans notre build j'ai eu ddl fichier à générer. EntityManagerHolder classe devrait être défini dans votre context.xml. C'est un peu hackish mais fonctionne.