我有一个hibernate映射,
@Entity
@Table(name="user")
public class User{
@ManyToOne(optional=true)
@JoinColumn(name="email_id",nullable=true)
private Email email;
}
在我的映射中,Email对象有时会为空。由于email_id和email字段不为空,我想要低于错误,我想只在User表上插入,如果对象为null,则需要跳过Email表。我该如何处理这种情况?
org.springframework.dao.InvalidDataAccessApiUsageException: org.hibernate.TransientPropertyValueException: object references an unsaved transient instance - save the transient instance before flushing
如果我使用 @ManyToOne(cascade=CascadeType.ALL), am getting null exception
。
请提前帮助我
答案 0 :(得分:0)
我认为你应该在同一个对象(user
)中使用email_id,如果你希望只读取Email
表,那么你的电子邮件就不会被保留。
答案 1 :(得分:0)
也许您可以使用@JoinColumn
选项补充referencedColumnName
注释,以指定电子邮件的PK列。