velocity的string轉數字,非常有意思:
1、通過java的包裝類進行轉換
#set($intString = "20")
#set($Integer = 0)
$Integer.parseInt($intString)
#set($tring = "20")
#set($Double = 0.0)
$Double.parseDouble($string)
以上輸出:
20
20.0
注意:velocity無法直接使用Integer(或Double),但是可以先定義一個整型變量(Double),使用這個整型變量的parseInt(“string”)轉換。
先定義,再使用!
2、可以使用spring中的velocity的numberTool(numberToolAttribute屬性):
<bean id="velocityViewResolver" class="com.banksteel.erp.web.common.utils.VelocityLayoutViewResolver"> <property name="layoutUrl" value="inc/layout.vm"/> <property name="cache" value="false"/> <property name="suffix" value=".vm"/> <property name="exposeSpringMacroHelpers" value="true"/> <property name="dateToolAttribute" value="dateTool"/> <property name="numberToolAttribute" value="numberTool"/> <property name="requestContextAttribute" value="req"/> <property name="exposeRequestAttributes" value="true"/> <property name="exposePathVariables" value="true"/> <property name="toolboxConfigLocation" value="WEB-INF/tool-box.xml"/> <property name="contentType" value="text/html;charset=UTF-8"/> </bean>
$numberTool.format("0.00", "500");
3、NumberTool
org.apache.velocity.tools.generic.NumberTool
在toolbox.xml中配置如下所示:
<tool> <key>number</key> <scope>application</scope> <class>org.apache.velocity.tools.generic.NumberTool</class> <parameter name="format" value="#0.0"/> </tool>
關於number,如下所示:
函數舉例顯示結果:
$number org.apache.velocity.tools.generic.NumberTool@32c41c $number.currency("35") ¥35.00 $number.format #0.0 $number.locale zh_CN $number.format("35") 35.0 $number.integer("35.47") 35 $number.number("35.47") 35.47 $number.percent("0.3547") 35% $number.toNumber("35.47") 35.47
以上!
注意:velocity的減法:“-”前后都要有空格!!!