[英]How to do arithmetic in Spring properties, with values from a properties file?
Example use-case: properties file passes in a numeric value in millis, and you want to use it in seconds. 用例示例:属性文件以毫秒为单位传入一个数值,您想在几秒钟内使用它。
Your .properties file: 您的.properties文件:
jdbc.timeout= 2000 jdbc.timeout = 2000
Your applicationContext.xml currently 您的applicationContext.xml当前
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url"value="jdbc:mysql://myserver/mydb" />
<property name="username" value="user" />
<property name="password" value="changeme" />
<property name="validationQuery" value="SELECT 1;"/>
<property name="validationQueryTimeout" value="${jdbc.timeout}" />
</bean>
You want the validationQueryTimeout value to be in seconds, how do you convert it? 您希望validationQueryTimeout值以秒为单位,如何转换它?
如果您使用的是Spring 3.0或更高版本,则可以使用SpEL表达式内的属性,如下所示:
<property name="validationQueryTimeout" value="#{${jdbc.timeout}/1000}" />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.