如何使用CDI进行方法参数注入?
2022-09-01 22:41:58
是否可以使用 CDI 将参数注入到方法调用中?预期行为类似于现场注射。查找首选生产商并使用产品。
我想做的是:
public void foo(@Inject Bar bar){
//do stuff
}
或这个(使用较少混淆的sytax):
public void foo(){
@Inject
Bar bar;
//do stuff
}
在这两种情况下,此语法都是非法的。有替代方案吗?如果不是 - 如果可能的话,出于某种原因,这会是一个坏主意吗?
谢谢
编辑 - 我可能使我的要求不够清晰 - 我希望能够直接调用该方法,将变量的初始化留给容器。Jörn Horstmann和Perception的答案表明这是不可能的。bar