Java 如何在Spring中使用SpEL注入方法调用的结果?
我想将方法调用的结果注入到我的类中。我有下一个代码:Java 如何在Spring中使用SpEL注入方法调用的结果?,java,spring,spring-el,Java,Spring,Spring El,我想将方法调用的结果注入到我的类中。我有下一个代码: class Example { private static final String NAME = "name"; // #1 @Autowired @Qualifier("a.b") private B b; // #2 @Autowired @Qualifier("#{a.b}") private B b; // #3 @Autowir
class Example {
private static final String NAME = "name";
// #1
@Autowired
@Qualifier("a.b")
private B b;
// #2
@Autowired
@Qualifier("#{a.b}")
private B b;
// #3
@Autowired
@Qualifier("#{a.b.getC('" + NAME + "')}")
private C c;
}
所以我有3种不同的变体。第一个有效,第二个无效,但不确定我是否正确编写了SpEL,第三个也无效
实际上我需要的是第三种变体。我需要在名为“a.b”的bean上注入调用方法“getC(name)”的结果
也许有人也有类似的问题,并且知道怎么做?您不能在@Qualifier中使用SpringEL,只能在SpringEL中使用constant 在名为“a.b”的bean上注入调用方法“getC(name)”的结果,如下所示:
@Bean(name="a.b")
private B b(){
return getC(name);
}
也许这对你有用: