Java 如何使用属性文件中的值在Spring属性中进行算术运算?

Java 如何使用属性文件中的值在Spring属性中进行算术运算?,java,spring,spring-el,Java,Spring,Spring El,示例用例:属性文件以毫秒为单位传递一个数值,您希望以秒为单位使用它 您的.properties文件: jdbc.timeout=2000 您的applicationContext.xml当前 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="c

示例用例:属性文件以毫秒为单位传递一个数值,您希望以秒为单位使用它

您的.properties文件:

jdbc.timeout=2000

您的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>


如果希望validationQueryTimeout值以秒为单位,如何转换它

如果使用的是Spring 3.0或更高版本,则可以在SpEL表达式中使用如下属性:

   <property name="validationQueryTimeout" value="#{${jdbc.timeout}/1000}" />

另请参见此处介绍的另一种方法: