Ci-dessous, le code génère une erreur de couléeHibernate Session.save() ne renvoie pas de valeur?
long newID = (Long) session.save (objet);
Je suis nouveau à hiberner. Je ne sais pas pourquoi.
Ci-dessous, le code génère une erreur de couléeHibernate Session.save() ne renvoie pas de valeur?
long newID = (Long) session.save (objet);
Je suis nouveau à hiberner. Je ne sais pas pourquoi.
La valeur de retour de session.save()
dépend de votre mappage. Très probablement, vous avez un type d'identifiant qui n'est pas long. Essayez de le faire:
System.out.println(session.save(object).getClass().getName());
Ensuite, vous verrez le nom du type.
Il existe deux méthodes:
public Serializable save(Object object) throws HibernateException
persister l'instance donnée transitoire, d'abord l'attribution d'un identificateur généré. (Ou en utilisant la valeur actuelle de la propriété d'identificateur si le générateur affecté est utilisé.) Cette opération cascade vers les instances associées si l'association est mappée avec cascade="save-update"
.
Paramètres: objets - une instance transitoire d'une classe persistante
Retours: l'identificateur généré
public Serializable save(String entityName, Object object) throws HibernateException
persistent l'exemple donné transitoire, d'abord l'attribution d'un identificateur généré. (Ou en utilisant la valeur actuelle de la propriété d'identificateur si le générateur affecté est utilisé.) Cette opération cascade vers les instances associées si l'association est mappée avec cascade="save-update"
.
Paramètres: objet - une instance transitoire d'une classe persistante
Returns: l'identifiant généré
Comment savoir si ou non sauvegarde effectuée? Y a-t-il une vérification dans hibernate comme le compte JDBC PreparedStatement normal? – mannedear