Я работаю с hibernate и использую @Version для optimisticLock.
Моя сущность содержит простое поле и 2 отношения @ OneToMany
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
private List<ApplicationStatus> appstatus = Collections.emptyList();
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.PERSIST)
@JoinTable(name = "app_version",
joinColumns = @JoinColumn(name = "app_id", referencedColumnName = "id"),
inverseJoinColumns= @JoinColumn(name="version_id", referencedColumnName="id"))
private List<Version> versions = Collections.emptyList();
Когда я обновляю родительский объект, поле версии увеличивается, но когда я изменяю список appstatus или список версий, поле версии тоже увеличивается, но я ничего не меняю в родительском, почему hibernate решает увеличить версию родительского?
, чтобы сохранить его делаю что-то вроде этого:
parentObject.getVersion().add(version)
parentObjectRepository.save(parentObject);
Нужно ли мне создать хранилище для моего дочернего объекта и сохранить их в другом хранилище ??
спасибо!