Это вопрос Hibernate/JPA об обновлении объекта в базе данных.Слияние и слияние Hibernate не сохраняются в объекте
У меня есть объект, который я создал в другой транзакции, используя entityManager.persist (object).
Этот объект возвращается, а затем обновляются некоторые значения. Затем вызов выполняется другим способом, который аннотируется с помощью @Transactional. Этот метод вызывает метод слияния в базовом классе (показано ниже).
В следующем коде rvalue имеет измененную информацию до тех пор, пока не будет вызвано обновление. После вызова refresh данные возвращаются к исходным значениям.
Я ожидаю, что вызов flush() будет сохраняться в базе данных.
Я попытался прокомментировать вызов обновления, считая, что сохранение не произойдет, пока я не покину метод, завернутый в транзакцию. Тем не менее, я все еще считаю, что изменения не сохраняются.
Любые идеи о том, что может произойти, будут очень признательны!
@Override
public T merge(T object) {
T rvalue = entityManager.merge(object);
entityManager.flush();
entityManager.refresh(rvalue);
return rvalue;
}
полезный ответ. Работаю отлично для меня !!! –