constructor-arg ref from spring属性

时间:2014-07-15 12:00:47

标签: java spring spring-mvc

我的bean必须在运行时绑定。

<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
      <constructor-arg ref="${requiredBean:mysql}"/>
</bean>

<bean id="mysql" class="xxx.xxx.xxxxxx">
</bean>

<bean id="mongo" class="xxx.xxx.xxxxxx">
</bean>

在属性文件中,我添加了属性

requiredBean=mongo

但是由于某种原因,spring没有拾取属性文件中的requiredBean(属性文件配置正确,除了这个属性之外所有其他属性都正确加载)。

我只是想知道我用于为构造函数aa ref声明arg的语法是否正确,或者是否有其他方法来声明它。

请帮我解决这个问题。

如果问题不明确,请告诉我。

1 个答案:

答案 0 :(得分:1)

如果您确定(正如您在.properties的内容中已经提到的那样)提到了正确的属性(没有拼写错误),那么问题就是其他问题,而不是属性本身。尝试删除默认值。它必须抛出异常,如:::: java.lang.IllegalArgumentException:无法解析占位符&#39; XYZ&#39;在字符串值&#34; $ {XYZ}&#34;。如果它没有抛出此异常,则问题根本与此bean无关。