0

我有一个情况,即时尝试弄清楚为什么如此。该场景是我有一个类A实现了一个Web服务公开的操作。对于每个操作请求,都会创建一个新的A实例。整个事情由Spring内部管理,我不确定Web服务实例化的A类究竟如何。@价值的地方持有人不解决在某些春豆价值

现在我有一个类变量,我想通过

@Value在运行过程中注入( “$ {someValue中}”) 字符串someVariable

someValue中定义的系统属性,其价值。但是每个创建的bean都有一些变量为NULL。

我在同一个包中使用@Configuration注解的另一个类中尝试了同样的事情,它正在解析变量。

因此,林想,如果通过@Value注入的能力取决于一个bean就像@Component,@配置 - 创建@豆的方式,XML definiti

回答

0

不是真的。实际上,您可以在组件扫描bean和xml定义bean中使用@Value注入值。但请注意这一点,它取决于您将Placeholder放入哪个xml文件,它只是在每个容器中使用valid。例如,你把它放在applicationContext中,那么xxx-servlet.xml中的bean创建不能用@Value注入值。

+0

对不起,我没有得到你所说的答案的第二部分。 “它取决于你放置哪个xml文件,它只是在每个容器中使用valids,例如,你把它放在applicationContext中,然后在xxx-servlet.xml中创建的bean不能用@Value注入值” – broun 2013-03-28 07:29:20

+0

好吧,这里是它是什么,例如你把这些值放在一个属性文件中,并且你想使用它,所以你应该在xml配置文件中配置placeholer,然后你配置它的xml文件可以确定哪个bean可以使用@Value来注入值。 – OQJF 2013-03-28 07:40:55

+0

我不明白propertyplaceholder配置器可以拾取属性rt。为什么我们需要专门配置每个属性?我的意思是我们需要为每个我们喜欢使用占位符的值做一些“配置”的东西, – broun 2013-03-28 07:49:17