gpt4 book ai didi

java - Map 或 List 的 Hibernate 注释

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:24:26 29 4
gpt4 key购买 nike

我是hibernate新手,我学会了如何注释Map<String, String>Map<String, CustomObject>List<CustomObject>等等 但是我找不到注释 Map<String, List> 的方法或 List<List>

例如以下是我如何注释 Map<CustomKey, CustomObject>它正在运行。

@ElementCollection(targetClass=PhoneNumber.class, fetch=FetchType.EAGER)
@MapKeyClass(NumberType.class)
@MapKeyColumn(name="type")
@CollectionTable(name="phones", joinColumns=@JoinColumn(referencedColumnName="id"))
@Getter
@Setter
private Map<NumberType, PhoneNumber> phones;

@Embeddable
public class NumberType {
}

@Embeddable
public class PhoneNumber {
}

现在,我的要求是注释像 Map<CustomKey, List<CustomObject>> 这样的属性和 Map<CustomKey, Map<AnotherCustomKey, CustomObject>>

所以我的问题是:是否可以通过 Hibernate/JPA 来实现?或者你在 hibernate 中以不同的方式实现这种目的?

非常感谢您的帮助。

最佳答案

一般而言,Map 表示多对多关系,因此由 @ManyToMany 映射。注解。列表是一对多或多对一的关系,因此应该是 @OneToMany@ManyToOne注释相应。Hibernate 处理实体及其之间的关系。

所以 Map值类型 ( Map/List ) 在示例中 应该由它自己的实体表示。例如。 List<CustomObject>将是 CustomObjectGroup .

关于java - Map<String, List> 或 List<List> 的 Hibernate 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23905902/

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