Junior — Middle
In what cases is it necessary to use the Bean annotation in a project?
sobes.tech AI
Answer from AI
The @Bean annotation in Spring is used for explicitly defining a bean within a configuration class. It is necessary when you want to create and register an object in the Spring context manually, for example, if the class is not annotated as a component (@Component) or if more complex bean creation logic is required.
Example of usage:
@Configuration
public class AppConfig {
@Bean
public MyService myService() {
return new MyServiceImpl();
}
}
Thus, @Bean is used when:
- Creating a bean from a third-party library that cannot be annotated.
- Configuring a bean with parameters or creation logic.
- Managing the bean's lifecycle explicitly.
If the class can be annotated with @Component and auto-scanning is used, then @Bean is not necessary.