如何在spring xml配置中注入环境变量?

设置环境变量后,AWS

System.getProperty("JDBC_CONNECTION_STRING")在http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_Java.managing.html中讨论

。一切都很好,除了我不能System.getProperty在我的Spring

XML配置代码中调用,也不能调用资源束快捷方式,因为资源束本身必须以某种方式提取这些环境变量来为它们服务。您能帮我将这个示例配置转换为使用环境变量吗?:-)

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">

<property name="driverClassName" value="com.mysql.jdbc.Driver" />

<property name="url" value="jdbc:mysql://secrethost:007/whois?autoReconnect=true" />

<property name="username" value="bond" />

<property name="password" value="abuginsidemistycorner" />

<property name="initialSize" value="100" />

<property name="minEvictableIdleTimeMillis">

<value>300000</value>

</property>

<property name="timeBetweenEvictionRunsMillis">

<value>60000</value>

</property>

<property name="maxIdle" value="20" />

</bean>

回答:

首先,将<context:property-placeholder .. />元素添加到您的配置中。

<context:property-placeholder />

然后只需在配置中使用占位符即可。

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">

<property name="driverClassName" value="com.mysql.jdbc.Driver" />

<property name="url" value="${JDBC_CONNECTION_STRING}" />

<property name="username" value="bond" />

<property name="password" value="abuginsidemistycorner" />

<property name="initialSize" value="100" />

<property name="minEvictableIdleTimeMillis" value="30000" />

<property name="timeBetweenEvictionRunsMillis" value="60000" />

<property name="maxIdle" value="20" />

</bean>

确保占位符名称与您已设置的变量匹配。

以上是 如何在spring xml配置中注入环境变量? 的全部内容, 来源链接: utcz.com/qa/424780.html

回到顶部