Hibernate-Problem
Geizhals » Forum » Programmierung » Hibernate-Problem (5 Beiträge, 179 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
Hibernate-Problem
25.11.2007, 14:07:03
Hi!

Ich habe ein Problem mit Hibernate und zwar werden nicht alle Datensätze in einer HSQLDB gespeichert. Im konkreten Fall nur 96 statt 100.

Das Problem liegt anscheined, dass zwischen dem commit einer Transaction und dem close() der Session ein paar Sekunden vergehen müssen.
Erst dann werden die letzten Datensätze geschrieben.
Kann man so einen Timeout konfigurieren oder liegt das Problem wo anders?

Bin für jeden Tipp dankbar.

Hier der Code dazu:


import java.io.IOException;
import java.util.Calendar;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.AnnotationConfiguration;


public class TestWorkingTime {

	public static void main(String[] args) {
		AnnotationConfiguration configuration = new AnnotationConfiguration();
		configuration.configure();
		SessionFactory sessionFactory = configuration.buildSessionFactory();
		Session session = sessionFactory.openSession();
		Transaction transaction = session.beginTransaction();
		for (int i=0; i<100; i++) {
			WorkingTime wt = new WorkingTime();
			wt.setDate(Calendar.getInstance().getTime());
			session.save(wt);
		}
		try {
			transaction.commit();
			System.in.read();
			session.close();
			sessionFactory.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}


Und die Hibernate-Config:

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

    <session-factory>

        <!-- Database connection settings -->
        <property name="connection.driver_class">org.hsqldb.jdbcDriver</property>
        <property name="connection.url">jdbc:hsqldb:file:myhibdb</property>
        <property name="connection.username">sa</property>
        <property name="connection.password"></property>
        
        <!-- JDBC connection pool (use the built-in) -->
        <property name="connection.pool_size">1</property>

        <!-- SQL dialect -->
        <property name="dialect">org.hibernate.dialect.HSQLDialect</property>

        <!-- Enable Hibernate's automatic session context management -->
        <property name="current_session_context_class">thread</property>

        <!-- Disable the second-level cache  -->
        <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>

        <!-- Echo all executed SQL to stdout -->
        <property name="show_sql">true</property>

        <!-- Drop and re-create the database schema on startup -->
        <property name="hbm2ddl.auto">create</property>
        
        <property name="hibernate.format_sql">true</property>
        
        <!-- Auflistung der gemappten Klassen -->
        <mapping class="WorkingTime"/>
   

    </session-factory>

</hibernate-configuration>



Antworten PM Übersicht Chronologisch
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung