У меня есть отношение OneToMany в одной из моих сущностей, как показано ниже, и я использую SpringDataJpa для слоя доступа к данным.
@Entity
public class StudentSkillRecord {
...
@OneToMany(cascade = CascadeType.ALL, orphanRemoval = true, fetch=FetchType.EAGER)
@JoinColumn(name = "skill_id")
private List<SkillAssessment> skillAssessments = new ArrayList<SkillAssessment>();
}
Каждый раз, когда добавляется новая SkillAssessment или изменяется один из столбцов SkillAssessmentЯ сохраняю весь StudentSkillRecord.Однако столбец updatedOn обновляется для всех сущностей коллекции skillAssessments, хотя я изменяю только одну из них.Есть ли способ, я могу обновить только для новых SkillAssessment или модифицированных?Я использую EntityListiner для SkillAssessment, чтобы изменить значение аудита, как показано ниже:
@PrePersist
@PreUpdate
public void onPreMerge() {
this.updatedOn = new Date();
}