JPA 双向 OneToMany 和 ManyToOne?
我使用的是 Oracle JDeveloper 11g 第 2 版。
我使用 SQL Developer 创建了两个表 A
和 B
。
表A
具有到表B
的FK
。使用“表中的实体”功能,我从中创建了两个 JPA 文件。
A
在 FK
上有 @ManyToOne
注释。
B
还为 A
添加了 @OneToMany
注释。我不想要这个。
我可以自动删除此 @OneToMany
注释吗?
public class A implements Serializable {
...
@ManyToOne
@JoinColumn(name = "FIELD_B")
private B b;
...
}
public class B implements Serializable {
...
@OneToMany(mappedBy = "b")
private List<A> assetList;
...
}
我不需要 @OneToMany 映射。
I'm using Oracle JDeveloper 11g Release 2.
I created two tables A
and B
using SQL developer.
Table A
has a FK
to table B
. Using the Entities from Tables function, I created two JPA files from it.
A
has @ManyToOne
annotation on FK
.
And also B
has @OneToMany
annotation to A
. I don't want this.
Can I remove this @OneToMany
annotation automatically?
public class A implements Serializable {
...
@ManyToOne
@JoinColumn(name = "FIELD_B")
private B b;
...
}
public class B implements Serializable {
...
@OneToMany(mappedBy = "b")
private List<A> assetList;
...
}
I don't need @OneToMany mapping.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以将其删除。那么只有A知道他们的B,而B不知道任何A。
如果删除
@OneToMany
映射,则必须删除引用的List 映射。 assetList 也是如此。
You can remove it. Then only As know of their B, And a B doesnt know any A.
If you remove the
@OneToMany
mapping you have to remove the referencedList<A> assetList
, too.