Comment utiliser Guice est AssistedInject?
J'ai lu https://github.com/google/guice/wiki/AssistedInject, mais il ne dit pas comment transmettre les valeurs de la AssistedInject arguments. Ce serait l'injecteur.getInstance() appel ressembler?
- liées, les réponses ci-dessous ne couvrent pas les cas où il de même type est utilisé plusieurs fois. stackoverflow.com/questions/23553865/...
Vous devez vous connecter pour publier un commentaire.
Vérifier la javadoc de FactoryModuleBuilder classe.
AssistedInject
vous permet de configurer dynamiquementFactory
pour la classe au lieu de codage par vous-même. Il est souvent utile quand vous avez un objet qui a des dépendances qui doit être injecté et certains paramètres qui doivent être spécifiés lors de la création de l'objet.Exemple à partir de la documentation est un
RealPayment
Voir que
CreditService
etAuthService
doit être injecté par conteneur, mais startDate et le montant devrait être spécifiée par le développeur lors de la création de l'instance.Donc au lieu d'injecter un
Payment
vous êtes l'injection d'unPaymentFactory
avec les paramètres qui sont marqués comme@Assisted
dansRealPayment
Et l'usine devrait être appliqué
Configuré en usine peut être injecté dans vos classes.
et utilisés dans votre code
RealPayment
n'a pas besoin d'implémenter une interface.