2 Stimmen

Hat OpenJPA Unterstützung für das Stapel-Einfügen?

Unterstützt OpenJPA Batch-Inserts ähnlich wie Hibernate? Ich habe dazu nichts in der Dokumentation gefunden, aber ich hoffe, ich habe es übersehen. Ich weiß, dass JPA dies im Allgemeinen nicht unterstützt.

1 Stimmen

Ich bin sicher, dass eine einfache Google-Suche diese Frage beantworten könnte; "openjpa Batch-Einfügung" vielleicht.

4voto

Rick Punkte 3765

Kurze Antwort, ja.

Längere Antwort, nehmen Sie den Link zur Hibernate-Dokumentation und ersetzen Sie die Session durch einen JPA EntityManager.

EntityManager em = emf.createEntityManager();
Transaction tx = em.getTransaction();

tx.begin();   
for ( int i=0; i<100000; i++ ) {
    Customer customer = new Customer(.....);
    em.persist(customer);
    if ( i % 20 == 0 ) { //20, das gleiche wie die JDBC-Batch-Größe
        //eine Charge von Inserts flushen und Speicher freigeben:
        em.flush();
        em.clear();
    }
}

tx.commit();
em.close();

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X