Hi zusammen,
ich habe eine Frage bezüglich des EntityManagers der für mich neu ist.
Es soll ein Programm zur Verwaltung der Warenwirtschaft werden. Meine Architektur wird so aussehen:
- Dao-Klassen zum Zugriff auf die DB.
- Model-Klassen um die Anwendungslogik zu implementieren.
- UserInterface bin ich noch unentschlossen, aber höchstwahrscheinlich eine JSF basierte, da ich mit SWING noch gar nichts zu tun hatte. Transaction Type = RESOURCE_LOCAL mit Tomcat.
Meine Fragen sind jetzt:
1. Wo sollte am besten die EntityManagerFactory initialisiert und wo geschlossen werden? Ich dachte in den Model-Klassen im Konstruktor initialisieren, und dann beim Aufruf der DAOs-Funktionen mitgegeben. Oder im Konstruktor der DAOs?
2. Wo soll der EntityManager initialisiert werden, habe es im Moment so dass in jeder Funktion der DAOs am Anfang
Code:
EntityManager em = emf.createEntityManager();
steht und am Ende
Code:
if(em != null) em.close();
, ist es so üblich?
3. Wie sollte die UserTransaction in Kombination mit einem EntityManager benutzt werden?
Ein paar Bespielklassen wären super um zu sehen wie es am besten in der Praxis benutzt wird.
Danke im Vorraus!