FAQ HibernateConsultez toutes les FAQ
Nombre d'auteurs : 5, nombre de questions : 63, dernière mise à jour : 17 mars 2014 Ajouter une question
Cette FAQ a été réalisée à partir des questions fréquemment posées sur les forums de http://www.developpez.com et de l'expérience personnelle des auteurs.
Nous tenons à souligner que cette FAQ ne garantit en aucun cas que les informations qu'elle propose sont correctes. Les auteurs font leur maximum, mais l'erreur est humaine. Cette FAQ ne prétend pas non plus être complète. Si vous trouvez une erreur, ou que vous souhaitez nous aider en devenant rédacteur, lisez ceci.
- Sous Hibernate 2, vous pouvez générer directement les fichiers de mapping depuis vos classes Java avec un outil intégré dans Hibernate (MapGenerator). L'emploi de cet utilitaire est très simple, il vous suffit de lancer la ligne de commande suivante :
Code : Sélectionner tout java -cp classpath_contenant_hibernate_et_vos_classes net.sf.hibernate.tool.class2hbm.MapGenerator options et noms_des_classes
Code : Sélectionner tout --output=Fichier_de_sortie
- Sous Hibernate 3, vous disposez d'un outil appelé Hibernate Tools possédant un plugin Eclipse ou une tâche ANT. Ceux-ci supportent tout deux la rétroingénierie (reverse engineering). Pour plus d'informations, aller voir le site officiel : ici
Vous pouvez générer directement le code des classes Java depuis vos fichiers de mapping avec un outil intégré dans Hibernate (CodeGenerator). L'emploi en est très simple, il vous suffit de lancer la ligne de commande suivante :
Code : | Sélectionner tout |
java -cp classpath_hibernate net.sf.hibernate.tool.hbm2java.CodeGenerator options fichiers_de_mapping
Les options possibles sont :
--output=repertoire : Répertoire des fichiers générés
--config=fichier_config : fichier de configuration de la génération
Ce fichier permet entre autres, de configurer le package des classes générées et de modifier la portée des setters. Pour plus d'infos sur ce fichier de configuration (il est optionnel), je vous invite à lire ce qu'en dit la documentation officielle.
Pour commencer, il vous faut paramétrer vos colonnes. C'est-à-dire que dans vos fichiers de mapping, pour chaque propriété, vous pouvez encore ajouter des options : length, precision, not-null et unique. Ainsi, lors de la création, vous aurez précisément le bon schéma qui sera créé. Vous pouvez aussi ajouter des contraintes sur la balise column : default, check (pour ajouter une condition d'insertion) et sql-type pour mettre un type précis et non pas le type par défaut d'Hibernate.
Il est impératif de renseigner la propriété de dialecte SQL dans le fichier de propriété sans ca, la génération ne sera pas possible.
Pour lancer la génération, vous avez 2 choix, soit par programmation :
Code java : | Sélectionner tout |
1 2 | SchemaExport export = new SchemaExport(config); export.create(true, true); |
Soit en ligne de commande :
Code : | Sélectionner tout |
java -cp classpath_hibernate net.sf.hibernate.tool.hbm2ddl.SchemaExport options_de_lancement fichiers_de_mapping
Proposer une nouvelle réponse sur la FAQ
Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour çaLes sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.