Respostas:
Sim, isso é correto, @Component
é um feijão Spring e um Singleton.
Se a classe pertence à camada de serviço que você pode querer anotá-lo com @Service
vez
Mas tenha em mente que, para que essas anotações sejam detectadas, você precisa colocar esta linha em applicationContext.xml
:
<context:component-scan base-package="com.yourcompany" />
Sobre singletons - os grãos de primavera estão todos no escopo singleton por padrão. A única coisa que você deve ter em mente é que você não deve armazenar o estado em variáveis de campo (elas devem conter apenas dependências). Portanto, seu aplicativo será seguro para thread e você não precisará de uma nova instância de um bean a cada vez. Em outras palavras, seus grãos não têm estado.