@SuppressWarnings("unchecked")
//@Override
public SerialNumber getCounter(String id) {
Session cs = sessionFactory.getCurrentSession();
SerialNumber sn = (SerialNumber) cs.get(SerialNumber.class, id);
if (sn == null) {
//TODO Throw an error (maybe). The code below creates a new Serial number counter
log.debug("NO Serial Number for: " + id + " was found.");
sn = new SerialNumber();
sn.setSerialNumberId(id);
sn.setName("Unspecified");
sn.setValue(0);
}
sn.setValue(sn.getValue()+1);
cs.saveOrUpdate(sn);
cs.close();
return sn;
}
Cette ligne est ignorée et enregistre rien à la base de données (MySQL):SaveOrUpdate ne répond pas. Pourquoi?
cs.saveOrUpdate(sn);
Toutes les idées pourquoi? Je n'ai pas la moindre idée.
Je ne suis en aucun cas Java gourou, mais même le gourou Java ici ne peut pas comprendre. Toute aide serait appréciée.
Merci.
Oui, sauf que vous devriez essayer de rester loin de l'écriture de code comme celui-ci et utiliser à la place Annotation- gestion des transactions pilotée lorsque cela est possible. –