Sobes.tech
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).