能否利用CDI将参数注入方法调用?预期的行为与实地注射相似。对首选生产者进行检查,并使用产品。
我想做的是:
public void foo(@Inject Bar bar){
//do stuff
}
或这样(用较少混淆的语句):
public void foo(){
@Inject
Bar bar;
//do stuff
}
这种语法在两种情况下都是违法的。 是否有其他选择? 如果不是,如果可能的话,出于某种原因,这会不会是一个坏主意?
谢谢
EDIT -- -- 我可能使我的要求不够明确 -- -- 我希望能够直接调用该方法,将 bar
变量的初始化留给容器。 Jörn Horstmanns和Pervitions的回答表明,这是不可能的。