JavaE6 DAO: Devrait-il être @Stateless ou @ApplicationScoped?

Je suis actuellement à la création d'un EJB3 d'Accès aux Données de la Classe pour gérer toutes les opérations de base de données dans mon Java EE 6-application. Maintenant, depuis Java EE 6 de la nouvelle ApplicationScoped-Annotation, je me demande quel est l'état de mon EJB doit avoir, ou si elle doit être apatrides.

Devrait-il être mieux de laisser la DAO être un @Stateless Session Bean, ou un @ApplicationScoped Bean? Ce propos de @Singleton? Quelles sont les différences entre ces options liées à un DAO?

EDIT:
Je suis l'aide de Glassfish 3.0.1 avec la totalité de la plate-forme Java EE 6

source d'informationauteur ifischer