Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 构造函数注入@EJB(beanName=";myBean";)_Java_Dependency Injection_Ejb - Fatal编程技术网

Java 构造函数注入@EJB(beanName=";myBean";)

Java 构造函数注入@EJB(beanName=";myBean";),java,dependency-injection,ejb,Java,Dependency Injection,Ejb,这可能吗? 我想这样做: @EJB(beanName = "MyStratImpl") public DateTimeReadImpl(MyStrategy<MyBean> myStrategy) { this.strategy = myStrategy; } @EJB(beanName=“mystrampl”) public DateTimeReadImpl(MyStrategy MyStrategy){ 这个策略=我的策略; } 我有一个无参数构造函数,我想使用构造函数注

这可能吗? 我想这样做:

@EJB(beanName = "MyStratImpl")
public DateTimeReadImpl(MyStrategy<MyBean> myStrategy) {
  this.strategy = myStrategy;
}
@EJB(beanName=“mystrampl”)
public DateTimeReadImpl(MyStrategy MyStrategy){
这个策略=我的策略;
}
我有一个无参数构造函数,我想使用构造函数注入而不是字段注入:

@EJB(beanName = "MyStratImpl")
private MyStrategy<MyBean> myStrategy strategy;
@EJB(beanName=“mystrampl”)
私人MyStrategy MyStrategy战略;
如何使用ejb引用作为构造函数参数


(我可以使用setter注入或反射进行注入,但我不想使用)

我认为EJB不支持构造函数注入,但您可以使用:

@Inject
public DateTimeReadImpl(MyStrategy MyStrategy){
这个策略=我的策略;
}
你需要这样做才能工作。另外,如果您有多个bean实现
MyStrategy
,那么您可以使用

@Inject
public DateTimeReadImpl(MyStrategy<MyBean> myStrategy) {
    this.strategy = myStrategy;
}