Pour définir une classe comme étant un singleton bean il faut, typiquement, annoter la classe avec l'annotation
@Singleton
.
Code source (JBoss) de l'annotation
@Singleton
:
L'annotation
@Singleton
accepte 3 paramètres :
-
String name()
Le nom EJB du singleton bean.
Ce nom sera utilisé pour référencer le singleton bean (avec DI ou JNDI).
Par défaut, si aucune valeur n'est spécifiée pour ce paramètre, il sera initialisé par le nom de la classe du singleton bean (sans le nom du package).
Typiquement, on s'en sert pour donner un nom plus explicite au singleton bean ou pour distinguer le singleton bean d'un autre singleton bean qui a le même nom de la classe.
-
String mappedName()
Ce paramètre permet de mapper le singleton bean à un nom global définit dans le container EJB (assez souvent un nom JNDI).
-
String description()
Nom descriptif du singleton bean.
Exemple :