Code unten wirft ein GussfehlerHibernate Session.save() gibt keinen Wert zurück?
Lange newID = (Long) session.save (object);
Ich bin neu im Winterschlaf. Ich weiß nicht warum.
Code unten wirft ein GussfehlerHibernate Session.save() gibt keinen Wert zurück?
Lange newID = (Long) session.save (object);
Ich bin neu im Winterschlaf. Ich weiß nicht warum.
Der Rückgabewert von session.save()
hängt von Ihrer Zuordnung ab. Höchstwahrscheinlich haben Sie eine Art von ID, die kein Long ist. Versuchen Sie, dies zu tun:
System.out.println(session.save(object).getClass().getName());
Dann sehen Sie den Typnamen.
Es gibt zwei Methoden:
public Serializable save(Object object) throws HibernateException
bleiben das gegebene transiente Beispiel zuerst eine generierte Kennung zuweisen. (Oder den aktuellen Wert der Bezeichnereigenschaft verwenden, wenn der zugewiesene Generator verwendet wird.) Diese Operation kaskadiert zu verknüpften Instanzen, wenn die Zuordnung mit cascade="save-update"
zugeordnet ist.
Parameter: Objekt - eine vorübergehende Instanz einer persistenten Klasse
Returns: die erzeugte Kennung
public Serializable save(String entityName, Object object) throws HibernateException
Persist das transiente Beispiel gegeben, zunächst eine generierte Kennung zuweisen. (Oder den aktuellen Wert der Bezeichnereigenschaft verwenden, wenn der zugewiesene Generator verwendet wird.) Diese Operation kaskadiert zu verknüpften Instanzen, wenn die Zuordnung mit cascade="save-update"
zugeordnet ist.
Parameter: Objekt - eine vorübergehende Instanz einer persistenten Klasse
Returns: die erzeugte Kennung
, wie wissen, ob durchgeführt oder nicht retten? Gibt es eine Überprüfung im Ruhezustand wie die normale JDBC PreparedStatement-Zählung? – mannedear