Java 为@InjectAnnotation提供注入的最简单方法是什么?
最近我发现某处有Java 为@InjectAnnotation提供注入的最简单方法是什么?,java,dependency-injection,inject,Java,Dependency Injection,Inject,最近我发现某处有@Inject注释。它可以注入类 如何从提供商端使用它 假设我想能够写作 class MyClass1 { @Inject MyType2 variable; } 如何让它工作?什么是绝对必要的 如果MyType2是抽象类的接口怎么办?JSR 330:Dependency Injection for Java(链接:)中指定了@Injection注释 它用于各种应用服务器上Web应用程序的Web容器中 依赖项注入为变量提供一个代理类,直到它真正被使用为止。然
@Inject
注释。它可以注入类
如何从提供商端使用它
假设我想能够写作
class MyClass1 {
@Inject
MyType2 variable;
}
如何让它工作?什么是绝对必要的
如果
MyType2
是抽象类的接口怎么办?JSR 330:Dependency Injection for Java(链接:)中指定了@Injection注释
它用于各种应用服务器上Web应用程序的Web容器中
依赖项注入为变量提供一个代理类,直到它真正被使用为止。然后容器将注入相关类,您可以使用它。
因此,您需要一个容器,因为将类注入注入注入点是他的任务
如果您想在JavaSE环境中使用依赖项注入,可以查看GoogleGuice(链接:)
“如果MyType2是抽象类的接口怎么办?”
实例化一个抽象类是不可能的,所以我想它会失败。您需要一个依赖注入框架,如Spring、Guice或CDI。那么为什么在主Java EE库中定义
@Inject
?因为CDI是Java EE的核心部分。HK2是另一个您可以研究的依赖注入框架()MyType2
可以用一些子代和/或实现者进行实例化