В чем разница между @Autowired и @Inject? Для меня этот вопрос только сейчас начал вызывать интерес. Порывшись на просторах интернета стало понятно, что разница в них лишь в идеи предоставления инструмента разработчику.
@Inject является частью JSR-303, которая определяет базовые аннотации для DI-фреймворков. Как вы уже догадались, это ведет к тому, что у вас улучшается переносимость между этими DI-фреймворками. Я не советую и не агитирую переходить на @Inject. Это личное дело каждого, просто данная аннотация является специфицированной :-)
Ну и теперь самое интересное - это настрока аннотации в pom'e и в Java-коде
Помните, что @Inject можно также вставлять в setter'ы
@Inject является частью JSR-303, которая определяет базовые аннотации для DI-фреймворков. Как вы уже догадались, это ведет к тому, что у вас улучшается переносимость между этими DI-фреймворками. Я не советую и не агитирую переходить на @Inject. Это личное дело каждого, просто данная аннотация является специфицированной :-)
Ну и теперь самое интересное - это настрока аннотации в pom'e и в Java-коде
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<dependency> | |
<groupId>javax.inject</groupId> | |
<artifactId>javax.inject</artifactId> | |
<version>1</version> | |
</dependency> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import javax.inject.Inject; | |
@Inject | |
private SomeClass someClass; |
No comments:
Post a Comment