velocity的string轉數字,numberTool


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的減法:“-”前后都要有空格!!!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM