Я новичок в программировании, но я наслаждаюсь опытом обучения. Я застрял, но хотел бы помочь.
Я пытаюсь написать простой метод для пополнения баланса пользователя, код метода пополнения ниже, как только сумма будет обновлена, запишите ее в БД, я использую Mysql.
Код компилируется, и я получаю ожидаемые результаты в памяти, баланс обновляется, однако он не записывается в БД и не содержит ошибок. Я подозреваю, что что-то не так с моей реализацией запроса на обновление. Я устанавливаю баланс, начинаю транс, обновляю, сбрасываю, заканчиваю транс, не уверен, что это правильный путь. Цените некоторые направления.
public void Topup(BigDecimal amount)
{
System.out.println("entering topup method");
EntityManager em = emf.createEntityManager();
if (balance!=null)
{
balance = balance.add(amount);
}
else {
balance = balance.ZERO ;
balance = balance.add(amount);
}
setBalance(balance);
em.getTransaction().begin();
em.createQuery("update Balance set balance = balance where
idsender=idsender")
.executeUpdate();
em.flush();
em.getTransaction().commit();
em.close();
}