Есть ли javax.inject. * Эквивалентный @Assisted - PullRequest
1 голос
/ 03 августа 2011

Мы смотрим на использование аннотаций JSR-330 javax.inject. * Вместо эквивалентов com.google.inject. *.Похоже, что стандарт JSR-330 не включает в себя несколько функций, которые мне понравились в Guice.

В частности, я не вижу поддержки для ключевого слова @Assisted.А как насчет @AssistedInject?Может ли @Inject быть размещен на нескольких конструкторах?

Мне интересно быть независимым от производителя, но не за счет удобных функций.Любые рекомендации?

Ответы [ 2 ]

4 голосов
/ 03 августа 2011

@Assisted только для Guice.Вы можете использовать его с JSR 330 @Inject.Если вам не нужна зависимость от Guice, выполните ручную инъекцию, внедрив в код интерфейс фабрики.

0 голосов
/ 03 августа 2011

В ответ на один из ваших вопросов:

Может ли @Inject быть помещен в несколько конструкторов?

из Javadoc

Инъекционные конструкторы помечаются @Inject и принимают ноль или больше зависимостей в качестве аргументов. @Inject может относиться максимум к одному конструктор на класс.

Так что я думаю, что ответ - нет.

...