在我的域模型中,我有一个用户实体,其中包含另一个用户(复合模式)。当我想保留用户时,我收到一个错误,上面写着“数据对于列来说太长......”。发生这种情况是因为试图将包含的用户存储为 BLOB。我希望存储包含用户的 ID - 而不是将整个对象存储为 BLOB。
在这种情况下,我必须使用哪种注释?基数是 1 : 0..1 - 所以一个用户可以包含另一个用户。
这是代码...
@Entity
@Table(name="flex_app_user")
public class User implements Serializable {
private User client;
public User(){
}
@OneToOne
public User getClient() {
return client;
}
}
...问题是由数据模型的变化引起的。正确的注释是 OneToOne。一切正常。
亲切的问候, Jochen