Respuestas:
Sí, eso es correcto, @Component
es un Spring bean y un Singleton.
Si la clase pertenece a la capa de servicio es posible que desee realizar anotaciones con @Service
su lugar
Pero tenga en cuenta que para que se detecten estas anotaciones, debe colocar esta línea en applicationContext.xml
:
<context:component-scan base-package="com.yourcompany" />
Acerca de los singleton: los frijoles de primavera están todos en el alcance de singleton de forma predeterminada. Lo único que debe tener en cuenta es que no debe almacenar el estado en las variables de campo (solo deben contener dependencias). Por lo tanto, su aplicación será segura para subprocesos y no necesitará una nueva instancia de un bean cada vez. En otras palabras, sus frijoles son apátridas.