Réponses:
Oui, c'est correct, @Component
c'est un haricot de printemps et un singleton.
Si la classe appartient à la couche de service, vous souhaiterez peut-être l'annoter à la @Service
place
Mais gardez à l'esprit que pour que ces annotations soient détectées, vous devez placer cette ligne dans applicationContext.xml
:
<context:component-scan base-package="com.yourcompany" />
À propos des singletons - les beans spring sont tous dans la portée singleton par défaut. La seule chose que vous devez garder à l'esprit est que vous ne devez pas stocker l'état dans des variables de champ (elles ne doivent contenir que des dépendances). Ainsi, votre application sera thread-safe, et vous n'aurez pas besoin d'une nouvelle instance d'un bean à chaque fois. En d'autres termes, vos beans sont apatrides.