Guice и файлы свойств - PullRequest
42 голосов
/ 18 июня 2010

Есть ли у кого-нибудь пример того, как использовать Google Guice для добавления свойств из файла .properties. Мне сказали, что Guice смог проверить, что все необходимые свойства существуют при запуске инжектора.

В настоящее время я не могу найти что-либо на вики-сайте об этом.

1 Ответ

69 голосов
/ 18 июня 2010

Вы можете связать свойства, используя Names.bindProperties(binder(), getProperties()), где getProperties возвращает объект Properties или Map<String, String> (чтение файла свойств как объект Properties зависит от вас).

Затем вы можете ввести их по имени, используя @Named.Если у вас был файл свойств:

foo=bar
baz=true

Вы можете вставить значения этих свойств в любое место, как вы хотели, например:

@Inject
public SomeClass(@Named("foo") String foo, @Named("baz") boolean baz) {...}

Guice может преобразовывать значения из строк в типвставляется, например boolean выше, автоматически (при условии, что строка является подходящим форматом).Это работает для примитивных типов, перечислений и литералов классов.

...