5

我有 2 个属性文件a.propertiesb.properties 我已将应用程序上下文添加为:

<context:property-placeholder location="classpath:a.properties" />
<context:property-placeholder location="classpath:b.properties"/>

具有属性的第一个文件包含数据库连接详细信息(这很好用)第二个 - 包含某些特定 bean 使用的属性。在那个bean中,我通过@Value注释使用这些属性

@Value("#{qw.er}")
private String someA;    
@Value("#{as.df}")
private String someB;

但是我在启动过程中遇到异常:

 org.springframework.expression.spel.SpelEvaluationException: 
EL1008E:(pos 0): Field or property 'qw' cannot be found on object of type 
'org.springframework.beans.factory.config.BeanExpressionContext'

我做错了什么?

context:property-placeholder可以在一个文件中使用 2吗?

PS:属性 qw.er 和 as.df 只存在于文件 b.properties

4

1 回答 1

9

It is explained here

After defining your properties you should use

@Value("${qw.er}")
private String someA;

Notice $ sign.

于 2013-07-17T13:11:04.407 回答