Sobes.tech
Junior — Middle

Qual é a diferença entre um componente Spring e um bean, e quais são as suas principais características?

sobes.tech IA

Resposta da IA

No contexto do Spring, um bean é um objeto gerido pelo contêiner IoC do Spring. Um componente é uma anotação especial (@Component) que indica que a classe deve ser detectada e registrada automaticamente como bean.

Principais características:

  • @Component é uma forma de marcar uma classe para escaneamento e registro automáticos no contêiner.
  • Bean é qualquer objeto que o Spring cria e gerencia seu ciclo de vida, incluindo componentes, serviços (@Service), repositórios (@Repository) e controladores (@Controller).

Assim, um componente é uma das formas de criar um bean. Todos os componentes são beans, mas nem todos os beans precisam ser marcados como componentes (por exemplo, beans criados manualmente via @Bean).