Hibernate@manytone与自定义生成的ID
我有一个关于@OneToMany与自动生成的ID绑定的简单问题-下面是代码的相关部分。我面临的问题是,在我的每个偏差中,生成的自定义id没有添加到sampleRequest实例中。它试图在数据库中插入null,而我不允许null,因此它失败了 谢谢Hibernate@manytone与自定义生成的ID,hibernate,many-to-one,Hibernate,Many To One,我有一个关于@OneToMany与自动生成的ID绑定的简单问题-下面是代码的相关部分。我面临的问题是,在我的每个偏差中,生成的自定义id没有添加到sampleRequest实例中。它试图在数据库中插入null,而我不允许null,因此它失败了 谢谢 @Entity @Table(name="SAMPLE_REQUESTS") public class SampleRequest implements Serializable { @Id @Column(name="REQUEST_
@Entity
@Table(name="SAMPLE_REQUESTS")
public class SampleRequest implements Serializable {
@Id
@Column(name="REQUEST_ID")
@GenericGenerator(name="seq_id", strategy="com.tracker.services.SampleRequestSequenceGenerator")
@GeneratedValue(generator="seq_id")
private String requestId;
@OneToMany(cascade = {CascadeType.ALL}, fetch = FetchType.EAGER, mappedBy = "sampleRequest") //mappedBy signals hibernate that the key for the relationship is on the other side
private List<ProcessDeviation> deviations;
....
}
@Entity
@Table(name="PROCESS_DEVIATIONS")
public class ProcessDeviation implements Serializable {
@Id
@GeneratedValue
@Column(name="DEVIATION_ID")
private int deviationId;
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name="REQUEST_ID")
private SampleRequest sampleRequest;
...
}
SAMPLE_REQUESTS columns: REQUEST_ID, COMMENTS, etc.
PROCESS_DEVIATIONS columns: DEVIATION_ID, REQUEST_ID, COMMENTS, etc.
您需要先保存sampleRequest,并在保存之前将其id分配到ProcessDeviation中