JPA EntityManager, comment ça marche?

Désolé pour la question de noob, mais je vais avoir des problèmes avec JPA+Hibernate donc j'ai pensé que quelque chose n'est pas clair dans mon esprit.
J'ai quelques entités, disons A, B, C, D et j'ai codé AMethods, BMethods, CMethods, DMethods. Chacun des *Méthodes de classes contiennent EntityManager initialisation par EntityManagerFactory et certaines méthodes fondamentalement exécuter des requêtes. Je ne sais pas si je dois utiliser un pattern singleton (alors que j'ai un EntityManager par *Méthode de classe) ou si j'ai besoin d'ouvrir et de fermer l'EntityManager à chaque fois que j'exécute une requête ou je persiste/supprimer une entité... pouvez-vous m'aider??

source d'informationauteur Raffo