Comprendre l'utilisation de Spring @Autowired
L'annotation @Autowired de Spring simplifie l'injection de dépendances, éliminant le besoin d'une configuration XML explicite. Il permet à Spring d'identifier et d'injecter automatiquement des dépendances dans des champs désignés ou des méthodes de définition des classes de bean.
Explication détaillée
Dans le fichier XML, le
Exemples
Les exemples fournis démontrent l'utilisation de @Autowired dans les classes Java :
public class SimpleMovieLister { @Autowired public void setMovieFinder(MovieFinder movieFinder) { this.movieFinder = movieFinder; } }
Dans cet exemple, la méthode setMovieFinder attend une instance de MovieFinder, que Spring trouvera automatiquement et injecter.
public class MovieRecommender { @Autowired public void prepare(MovieCatalog movieCatalog, CustomerPreferenceDao customerPreferenceDao) { this.movieCatalog = movieCatalog; this.customerPreferenceDao = customerPreferenceDao; } }
Cet exemple utilise l'annotation @Autowired pour injecter plusieurs dépendances dans une seule méthode.
Résoudre les conflits de dépendances
Dans les cas lorsque plusieurs beans implémentent la même interface comme Color, vous pouvez utiliser l'annotation @Qualifier pour spécifier explicitement le bean que vous souhaitez injecter. Vous pouvez également utiliser l'annotation @Resource, qui combine les fonctionnalités de @Autowired et @Qualifier.
@Resource(name="redBean") public void setColor(Color color) { this.color = color; }
Bonnes pratiques
Bonnes pratiques d'utilisation de @Autowired include :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!