Junior — Middle
La création de la même instance du composant est-elle assurée lors de l'utilisation de l'annotation @Autowired dans différentes parties d'une classe annotée @Component?
sobes.tech IA
Réponse de l'IA
Oui, lors de l'utilisation de l'annotation @Autowired dans Spring Framework pour l'injection de dépendances dans une classe annotée comme @Component, une seule instance du composant est créée par défaut (portée Singleton). Cela signifie que dans différents endroits de la classe où le même composant est injecté via @Autowired, la même instance sera utilisée.
Par exemple :
@Component
public class MyService {
@Autowired
private MyRepository repo1;
@Autowired
private MyRepository repo2;
public void doSomething() {
// repo1 et repo2 font référence à la même instance de MyRepository
}
}
Ainsi, Spring gère le cycle de vie des composants et assure la réutilisation d'une même instance, sauf indication contraire (par exemple, avec l'annotation @Scope).