Привет, у меня есть моя сущность
@Entity
@Getter
@Setter
@EntityListeners(TaskInfoEntityListener.class)
public class TaskInfo extends Auditable {
@Id
private String taskId;
...
@OneToMany(mappedBy = "task", orphanRemoval = true, fetch = FetchType.EAGER)
private List<TaskComment> comments;
}
И когда я запускаю этот кусок кода
final TaskInfo taskInfo = new TaskInfo();
taskInfo.setTaskId("1234");
final TaskComment taskComment = new TaskComment();
taskComment.setComment("comment_1234");
taskInfo.setComments(Collections.singletonList(taskComment));
TaskInfo newTaskInfo = taskInfoRepository.save(taskInfo);
EntityListener запускается дважды (первый, когда сохраняется TaskInfoи второй, когда комментарии сохраняются), но я хочу один раз (только в первый раз).Я попробовал все с извлечением и каскадом с обеих сторон, но я не могу заставить его работать.Я также подумал о том, чтобы поместить некоторую логику в TaskInfoEntityListener, чтобы проверить, изменилось ли поле «комментарии», но мне не очень нравится это решение.Что ты думаешь?У вас есть лучший подход или другая идея?
Спасибо!