我有一个项目在Oracle数据库上使用Hibernate,所有实体都是在hibernate.reveng.xml文件的控制下从Hibernate Tools直接生成的。如何使用hibernate.reveng.xml更改自引用多对多集合的名称?
我已经拥有自身使用中间表中的许多一对多的关系,像这样一类:没有任何具体的指示
PERSON:
ID
...
PERSON_PERSON:
PARENT_ID --> PERSON.ID
CHILD_ID --> PERSON.ID
,Hibernate的工具会自动生成一个类,它看起来像这样:
public class Person {
private Long id;
private Set<Person> personsForParentId = new HashSet<Person>(0);
private Set<Person> personsForChildId = new HashSet<Person>(0);
}
由于编码,以确定哪个是父集,哪个是子集时,这不是非常有帮助,我想给他们改名为“父母”和“孩子”。
我一直在编辑hibernate.reveng.xml来试图强制它重命名该字段,但我无法找到有效的东西。我不确定我是在PERSON表,PERSON_PERSON表还是两者上指定更改,以及要更改哪些属性。
我习惯于手动设置这些类,但是在这个项目中我没有对构建过程的控制,所以我必须处理由Hibernate Tools生成的东西,所以我真的只需要让Hibernate Tools做我想做的事。
我很确定它使用SQL元数据来生成这些元数据。因此,我认为你不可能让自动化过程偏离你所拥有的。 – javamonkey79 2011-10-17 04:04:02