Я пытаюсь обновить поля таблицы MySQL с помощью JPARepository save ().Но save () обновляет нулевое поле, но не обновляет поля, в которых уже есть некоторые значения.
значения в настоящее время в БД: place: null itemcount: 2
Новые значения передаются в temp для обновленияplace: Noplace itemcount: 1
Я пробовал с 1. save (), 2. saveAndFlush с @Transaction 3. Снова извлекаем сущность перед обновлением.
public Cons updateCons(Cons temp, Cons con) {
Cons tempCons = consRepository.findOneByIdAndConstId(cons.getId(),cons.getConsId());
// tempCons.setId(cons.getId());
log.info("before saving cons :{}, count={}",consignment.getConsId(),temp.getItemCount());
tempCons.setItemCount(temp.getItemCount());
tempCons.setplaceStatus("Noplace"); // this filed is currently null
Cons result = consRepository.saveAndFlush(tempCons);
log.info("after saving cons :{}, count={}",cons.getConsId(),result.getItemCount()); // logs the updated value on itemCount.
}
Ожидаемый результат: itemcount должен быть обновлен с новым значением, место должно быть обновлено жестко закодированным значением "Noplace"
Фактический результат: itemcount не обновлен в db с новым значением.но место обновляется с помощью "Noplace", но в журналах печатается новое значение в виде количества.