gpt4 book ai didi

java - JPA/Hibernate 无法确定类型

转载 作者:行者123 更新时间:2023-11-30 07:30:33 24 4
gpt4 key购买 nike

我已经被这个问题困扰了很长一段时间,我真的希望我能在这里找到一些帮助。

我使用复合主键类 AssociationKey,它由类 Association 使用。键类中的 id 也是自定义类。当我尝试运行代码时,我收到错误消息:

"Could not determine type for: IClassB, at table: Association, for columns: [org.hibernate.mapping.Column(ClassB)]"

我还尝试在类关联和 ClassB 中使用 ManyToOne 和 OneToMany 注释。但后来我收到错误,tpyes 是不正确:

The attribute matching the ID class attribute ClassB does not have the correct type IClassB

是否不能使用自定义类作为复合主键中的 Id?

@Entity
@IdClass(AssociationKey.class)
public class Association implements IAssociation {

@Id
private IClassA classA;
@Id
private IClassB classB;
...
}


public class AssociationKey implements IAssociationKey, Serializable {

public IClassA classA;
public IClassB classB;

public boolean equals() {..}
public int hashCode() {..}
}


@Entity
public class ClassB implements IClassA {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private List<IAssociation> associations;
}

最佳答案

我认为你的问题在于你的主键定义。您的复合主键由自定义 Java 类组成。但 JPA 规范声明如下:

A simple primary key or a field or property of a composite primary key should be one of the following types: any Java primitive type; any primitive wrapper type; java.lang.String; java.util.Date; java.sql.Date; java.math.BigDecimal; java.math.BigInteger.

关于java - JPA/Hibernate 无法确定类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36208477/

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