Не обновляйте родительский вариант спящего режима с помощью весеннего jpa - PullRequest
0 голосов
/ 10 марта 2020

Я работаю с 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);

Нужно ли мне создать хранилище для моего дочернего объекта и сохранить их в другом хранилище ??

спасибо!

...