J'ai un projet utilisant Hibernate sur une base de données Oracle pour laquelle toutes les entités sont générées directement depuis Hibernate Tools sous le contrôle d'un fichier hibernate.reveng.xml.Comment puis-je changer le nom de l'ensemble plusieurs-à-plusieurs autoréférentiel en utilisant hibernate.reveng.xml?
J'ai une classe qui a plusieurs-à-plusieurs à s'aide d'une table intermédiaire, comme ceci:
PERSON:
ID
...
PERSON_PERSON:
PARENT_ID --> PERSON.ID
CHILD_ID --> PERSON.ID
Sans directives spécifiques, outils Hibernate génère automatiquement une classe qui ressemble à ceci :
public class Person {
private Long id;
private Set<Person> personsForParentId = new HashSet<Person>(0);
private Set<Person> personsForChildId = new HashSet<Person>(0);
}
Depuis ce n'est pas très utile lors du codage pour déterminer qui est l'ensemble des parents et qui est l'ensemble des enfants, je voudrais les renommer comme « parents » et « enfants ».
J'ai modifié le fichier hibernate.reveng.xml pour essayer de le renommer, mais je n'arrive pas à trouver quelque chose qui fonctionne. Je ne suis pas sûr si je spécifie un changement sur la table PERSON, la table PERSON_PERSON, ou les deux, et les attributs à changer. Je suis habitué à configurer ces classes manuellement, mais sur ce projet je n'ai pas de contrôle sur le processus de construction, donc je dois me débrouiller avec ce qui est généré par Hibernate Tools, donc je dois juste faire des outils Hibernate pour faire ce que je veux.
Par conséquent, je ne pense pas que vous serez en mesure de faire dévier le processus automatisé de ce que vous avez. – javamonkey79