我很难理解休眠对象的工作方式。这是我的模型的一小部分:
职位空缺:
@ManyToMany(fetch=FetchType.EAGER,cascade=CascadeType.ALL)
@JoinTable(
name="jobOpening_questionSet",
joinColumns=@JoinColumn(name="jobOpenings_id"),
inverseJoinColumns=@JoinColumn(name="questionSets_id")
)
@IndexColumn(name="question_sets_idx",base=0,nullable=false)
public List<QuestionSet> getQuestionSets() {
return questionSets;
}
问题集:
@ManyToMany(mappedBy="questionSets",fetch=FetchType.EAGER)
public Set<JobOpening> getJobOpenings() {
return jobOpenings;
}
@OneToMany(cascade=CascadeType.ALL,fetch=FetchType.EAGER)
@IndexColumn(name="questions_idx",base=0)
@JoinColumn(name="questionset_id",nullable=false)
public List<FormQuestion> getQuestions() {
return questions;
}
表格问题:
@ManyToOne
@JoinColumn(name="questionset_id", insertable=false, updatable=false, nullable=false)
@OnDelete(action=OnDeleteAction.CASCADE)
public QuestionSet getQuestionSet() {
return questionSet;
}
现在我将如何着手修改问题集中的问题,或者更改问题集中与哪些工作相关联?例如,要编辑问题集中的问题,我想我应该能够通过其 id 获取问题,更改一些值,然后将其合并(),但这不起作用。
我正在使用 Spring(appfuse)中的 Hibernate,通常作为分离的对象。