EntityManagerFactory emf = Persistence.createEntityManagerFactory( "MeineJpaPU" );
try {
EntityManager em = emf.createEntityManager();
EntityTransaction tx = null;
try {
tx = em.getTransaction();
tx.begin();
em.persist( entity1 );
em.merge( entity2 );
em.find( MyEntity.class, id );
tx.commit();
} catch( RuntimeException ex ) {
if( tx != null && tx.isActive() ) tx.rollback();
throw ex;
} finally {
em.close();
}
} finally {
emf.close();
}