j2ee: czy commit() jest wymagany przy query?

0

Witam,
Mam kod, który przegląda (przez JPA) bazę danych.
Jestem świeżakiem w j2ee i dlatego pytam czy przy odpytywaniu bazy:

EntityManager em; //... inicjalizacja
Query q = em.createNativeQuery("jakies zapytanie");
q.getResultList();

Powinienem dawać na początku

em.getTransaction().begin();

a na końcu:

em.getTransaction().commit();

BTW Rozumiem, że em.close() powinien być wywoływany za każdym razem gdy kończymy prace z bazą?

0

To wszystko zalezy :)
Możesz dać na tej metodzie jakieś

@Transactional

I wtedy nie będziesz potrzebował ręcznie sie bawić w begin i commit. Jeśli chodzi o zamykanie Entity Managera to znów zależy. Zwykle tego nie robisz bo managera masz wstrzykiwanego i on sam sie zamknie jak będziesz stopował serwer.

1 użytkowników online, w tym zalogowanych: 0, gości: 1