用Spring向内部类注入一个值?

时间:2016-01-20 14:15:56

标签: java spring

我有一个私有静态内部类,我需要注入一个值而且我没有运气。

我的代码模式如下:

@Component
public final class someClassUtil {

    @Component
    private static class innerClass {
        private transient boolean myVar;

        @Value("${my.value.to.inject}")
        public void setMyVar(final boolean myVar) {
            this.myVar = myVar;
        }
    } 
}

我有一种感觉,它可能与访问修饰符有关,但我尝试了许多变体但没有成功。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

由于你的嵌套类是私有的,我担心Spring的DI机制无法调用setter,因此渲染它的注释无用。

答案 1 :(得分:0)

根据@Value docs,您需要使用@Value("#{my.value.to.inject}")。注意“#”而不是“$”。