6

FreeMarkerについて、デフォルトですべての数値を「コンピューター」の数値として扱うように指示することはできますか?

応募してみました

cfg.setSetting(Configurable.NUMBER_FORMAT_KEY, "computer");

また

cfg.setNumberFormat("computer");

構成オブジェクトに追加しましたが、結果は望ましいものではありません。これがドキュメントのやり方だと信じていますが、何か問題がありますか?

4

4 に答える 4

2

java.text.DecimalFormat指定する数値形式は、サポートされているものでなければなりません。あなたが今できる最も近いことは、ロケールを切り替えることですen_US(そして、それが手探りを使用しないようにすることをお勧めします; http://freemarker.org/docs/app_faq.html#faq_number_groupingを参照してください)。または、もちろん?c-s を全体に書くこともできますが、それはあなたが避けたかったことだと思います。

于 2013-01-30T22:09:07.687 に答える
0

ドキュメントに基づいて、FreemarkerConfigurationオブジェクトに設定することができます。

典型的な機能的なスプリング コンテキストの初期化:

<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
    <property name="templateLoaderPaths">
        <list>
            <value>classpath:META-INF/templates</value>
        </list>
    </property>
    <property name="freemarkerSettings">
        <props>
            <prop key="number_format">computer</prop>
        </props>
    </property>
    <property name="defaultEncoding" value="UTF-8" />
</bean>

<bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
    <property name="prefix" value="" />
    <property name="suffix" value=".ftl" />
    <property name="cache" value="true" />
    <property name="contentType" value="text/html;charset=UTF-8" />
    <property name="requestContextAttribute" value="request" />
</bean>

number_format (または、新しいバージョンの freemarker の場合は numberFormat) が に設定されていることに注意してくださいFreeMarkerConfigurer

あなたの質問に...私の推測では、間違った構成オブジェクトまたはスコープに設定しています。

于 2016-05-12T09:29:30.233 に答える