2012-10-11 127 views
3

在我的應用程序中,窗體中的大多數BigDecimal數字格式化爲2個十進制值。所以我有我自己BigDecimal to String converterConversionService(重寫語言環境使用小數點逗號而不是點)。但在特定的地方,我需要將該格式更改爲例如4個十進制值。什麼是實現這一目標的最佳方式?我嘗試使用@NumberFormat註釋,但我也需要使用小數點逗號。Spring MVC 3格式化BigDecimal

此外,Spring MVC 3中ConversionService@NumberFormat如何互相干擾?具體來說,在<spring:form>標籤?謝謝。

回答

0

如果您的2dp值是貨幣值,那麼您可能會嘗試將它們包裝在自定義「Money」類型中。然後,您可以編寫一個格式化程序,顯示爲2dp,但將來它還會給您靈活性以引入貨幣值,並可能將其包含在輸出中。例如。 £2.99或2,99€。

我首先在Martin Fowlers的企業架構模式中看過這種模式。 http://martinfowler.com/eaaCatalog/money.html

我知道它沒有回答您的具體問題,但我認爲這可能是一個有用的考慮,可能會導致您的正確答案。希望能幫助到你。