Hibernate: Session vs EntityManager

Dieses Thema Hibernate: Session vs EntityManager im Forum "Data Tier" wurde erstellt von espresso, 3. Jan. 2013.

Thema: Hibernate: Session vs EntityManager Hallo, ich bin noch ungeübt in Hibernate und versuche gearde etwas in meine DB zu schreiben. Dabei ist mir...

  1. Hallo,
    ich bin noch ungeübt in Hibernate und versuche gearde etwas in meine DB zu schreiben. Dabei ist mir aufgefallen, dass es wohl mehrere Möglichkeiten gibt, dies zu tun:

    1. Mit einer Session
    Code (Java):

    SessionFactory sessionFactory = InitSessionFactory.getInstance();
    Session session = sessionFactory.openSession();
    Transaction transaction = session.beginTransaction();
     
    session.save(subject);

    transaction.commit();
    session.close();
    sessionFactory.close();
     
    2. Mit einem EntityManager
    Code (Java):

    EntityManagerFactory emf = Persistence.createEntityManagerFactory("eventmanager");
    EntityManager em = emf.createEntityManager();
           
    EntityTransaction transaction = em.getTransaction();
    transaction.begin();
           
    em.merge(subject);
           
    transaction.commit();
                   
    em.close();
    emf.close();
     
    Kann mir jemand erklären, worin der Unterschied besteht bzw. was ich in welchem Kontext verwenden muss?
    Warum muss ich hier kein flush verwenden?

    Danke und viele Grüße
    espresso
     
  2. Vielleicht hilft dir das Grundlagen Training weiter --> *Klick*
  3. Vielen Dank für die schnelle Antwort.
     
  4. Inhaltlich ist es wirklich genau dasselbe, oder? Nur andere Interfaces/Klassen. Aber hinter dem JPA-EntityManager verbirgt sich, wenn man Hibernate für JPA nutzt, die Hibernate-Session.
     
  5. Kostenloses Java-Grundlagen Training im Wert von 39 €
    Schau dir jetzt hier das Tutorial an und starte richtig durch!