ERLEDIGT
JA
JA
ANTWORTEN
3
3
ZUGRIFFE
227
227
EMPFEHLEN
-
Hey...
,
ich habe ein merkwürdiges Problem beim Speichern über Hibernate:
Folgende Umgebung habe ich:
- Tomcat 6.0.32
- jdk 1.6.24
- hibernate 3
Ich möchte in meinem Projekt einen ganz einfach Datensatz über Hibernate in die Datenbank speichern. Habe auch schon Erfahrung mit Hibernate.
Das speichern eines Datensatzes klappt auch wunderbar mit einer MySQL DB 5.1x.
Jetzt habe ich eine MySQL DB 5.5.14 installiert und das speichern funktioniert nicht mehr.
Im LOG sehe ich das Hibernate ein INSERT macht:
Hibernate: insert into user (login_name, login_password, id) values (?, ?, ?)
Es fällt auch keine Exception oder sonst eine Fehlermeldung. Der Datensatz kommt aber einfach nicht mehr in der DB an. Datensätze auslesen funktioniert aber.
Sobald ich auf die MySQL DB 5.1x umstelle funktioniert wieder alles.
Verwende auch schon den neuste JDBC Treiber.
Hat irgendjemand eine Idee wo das Problem liegen könnte****
vielen dank und viele grüße
florian
-
09.07.11 18:33 #2SE Tutorials.de Gastzugang
Also ohne mich jetzt mit Hibernate auszukennen würde ich mal in die Rechte der DB gucken. Alternativ solltest du dir mal eine kleine App schreiben die Daten in die DB einträgt. Sollte das funktionieren liegt es warscheinlich an Hibernate ... sollte aber auch die Test-App irgendwie fehlschlagen solltest du in dieser wenigstens etwas mehr Exception-Handling haben um zu sehen ob nicht doch irgendwelche Exceptions von Hibernate geschluckt werden.
-
Habe mittlerweile was herausgefunden.
Folgendes hat mit der Verwendung von MySQL DB 5.1 funktioniert:
Code :1 2 3 4 5 6 7
public void saveUser(User user) { Session session = HibernateUtil.getSessionFactory().getCurrentSession(); session.beginTransaction(); session.saveOrUpdate(user); session.flush(); session.close(); }
Mit der Verwendung von MySQL DB 5.5 muss ich die Transaktion commiten, dann kommt es auch in der DB an.
Code :1 2 3 4 5 6 7
public void saveUser(User user) { Session session = HibernateUtil.getSessionFactory().getCurrentSession(); Transaction transaction = session.beginTransaction(); session.saveOrUpdate(user); session.flush(); transaction.commit(); }
ich setze mal den Punkt auf erledigt
...
trotzdem vielen dank für deine Antwort...
gruss florian
-
09.07.11 19:31 #4SE Tutorials.de Gastzugang
Naja das du die Transaktion auch commiten musst solltest du eigentlich wissen wenn du schon mit einer transaktionellen Datenbank arbeitest.
Ähnliche Themen
-
Hibernate Insert/Update - 2 Tabellen, ein Insert?
Von Lampe im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 5Letzter Beitrag: 28.05.09, 10:56 -
Spring2 + Hibernate + Annotations + Service + DAO > insert ?
Von Nobody im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 8Letzter Beitrag: 15.05.09, 12:00 -
Datenbank löschen mit Hibernate
Von HerrRitschwumm im Forum JavaAntworten: 3Letzter Beitrag: 17.09.07, 22:14 -
Hibernate - Datum Insert
Von y0dA im Forum JavaAntworten: 3Letzter Beitrag: 19.06.07, 10:12 -
Hibernate - Exception bei insert
Von y0dA im Forum JavaAntworten: 33Letzter Beitrag: 29.05.07, 12:40





Zitieren
Login





