Guice et les propriétés des fichiers
Quelqu'un a un exemple de comment utiliser Google Guice à injecter des propriétés d'un .fichier de propriétés. On m'a dit Guice a été en mesure de confirmer que toutes les propriétés nécessaires existent lors de l'injecteur de démarrage.
En ce moment je ne trouve rien sur le guice wiki à ce sujet.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez lier les propriétés à l'aide de
Names.bindProperties(binder(), getProperties())
, oùgetProperties
renvoie uneProperties
objet ou unMap<String, String>
(lire le fichier de propriétés comme unProperties
objet est à vous de voir).Vous pouvez ensuite les injecter par le nom à l'aide
@Named
. Si vous aviez un fichier de propriétés:Vous pourrait injecter les valeurs de ces propriétés n'importe où vous le souhaitez, comme ceci:
Guice pouvez convertir des valeurs de chaînes pour le type d'injection, telles que la
boolean
ci-dessus, automatiquement (en supposant que la chaîne est un format approprié). Cela fonctionne pour les types primitifs, les énumérations et de la classe de littéraux.@Named
et@javax.inject.Named
interchangeables moi-même. Voir le test de ici, qui comprend un test que cela fonctionne avecNames.bindProperties
. Avez-vous essayé?boolean
injection, a question que j'ai utilisé, même si j'avoue que je suis loin d'être un expert en Guice.@javax.inject.Named
et l'exemple ci-dessus (avecbindProperties
) et tout a bien fonctionné. Si il ya une situation où vous êtes d'avoir à utiliser l'Guice@Named
, pourriez-vous faire un petit test qui expose que et de le signaler ici?