Google Guice - Liaisons juste à temps
Comme les liaisons sont définies dans le module de liaison, Guice les utilise chaque fois qu'elle a besoin d'injecter des dépendances. Au cas où les liaisons ne sont pas présentes, il peut tenter de créer des liaisons juste à temps. Les liaisons présentes dans le module de liaison sont appeléesExplicit bindings et ont une priorité plus élevée alors que les liaisons juste à temps sont appelées Implicit bindings. Notez que si les deux types de liaisons sont présents, les liaisons explicites sont prises en compte pour le mappage.
Les exemples de trois types de liaisons Just-in-time sont donnés ci-dessous:
N ° Sr. | Type de reliure et description |
---|---|
1 | Constructeurs injectables Les constructeurs non privés et sans argument sont éligibles pour les liaisons juste à temps. Une autre méthode consiste à annoter un constructeur avec l'annotation @Inject. |
2 | @ImplementatedBy annotation L'annotation @ImplementatedBy indique au guide la classe d'implémentation. Aucune liaison n'est requise dans le module de liaison dans un tel cas. |
3 | @ProvidedBy annotation L'annotation @ProvidedBy indique au guide le fournisseur de la classe d'implémentation. Aucune liaison n'est requise dans le module de liaison dans un tel cas. |