gpt4 book ai didi

hibernate - 如何使用 hibernate.reveng.xml 更改自引用多对多集的名称?

转载 作者:行者123 更新时间:2023-12-02 23:24:58 27 4
gpt4 key购买 nike

我有一个在 Oracle 数据库上使用 Hibernate 的项目,该项目的所有实体都是在 hibernate.reveng.xml 文件的控制下直接从 Hibernate 工具生成的。

我有一个类,它使用中间表与其自身具有多对多关系,如下所示:

PERSON:
ID
...

PERSON_PERSON:
PARENT_ID --> PERSON.ID
CHILD_ID --> PERSON.ID

没有任何特定指令,Hibernate Tools 将自动生成一个如下所示的类:

public class Person {
private Long id;
private Set<Person> personsForParentId = new HashSet<Person>(0);
private Set<Person> personsForChildId = new HashSet<Person>(0);
}

由于在编码时确定哪个是父集、哪个是子集时这不是很有帮助,所以我想将它们重命名为“parents”和“children”。

我一直在编辑 hibernate.reveng.xml 以尝试强制它重命名该字段,但我找不到有效的东西。我不确定是否指定对 PERSON 表、PERSON_PERSON 表或两者进行更改,以及要更改哪些属性。

我习惯于手动设置这些类,但在这个项目中我无法控制构建过程,所以我必须使用 Hibernate Tools 生成的内容,所以我真的只需要制作Hibernate 工具可以做我想做的事。

最佳答案

在你的 hibernate.reveng.xml 文件上尝试像这样标记相关列;

<column name="personsForParentId" property="parents" />

关于hibernate - 如何使用 hibernate.reveng.xml 更改自引用多对多集的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3938376/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com