Entendo que a @Component
anotação foi introduzida na primavera 2.5 para livrar-se da definição de bean xml usando a verificação do caminho de classe.
@Bean
foi introduzido na primavera 3.0 e pode ser usado com o @Configuration
fim de se livrar completamente do arquivo xml e usar a configuração java.
Teria sido possível reutilizar a @Component
anotação em vez de introduzi-la @Bean
? Meu entendimento é que o objetivo final é criar beans nos dois casos.
Lite mode
. E isso não é recomendado. Veja aqui: docs.spring.io/spring/docs/current/spring-framework-reference/…
@bean
retorna uma instância personalizável do spring bean, enquanto @component
define uma classe que pode ser instanciada posteriormente pelo mecanismo IoC da primavera, quando necessário.