【问题标题】:How to standardize convertnumber usage in JSF for various components?如何标准化 JSF 中各种组件的 convertnumber 使用?
【发布时间】:2013-02-08 12:01:27
【问题描述】:
在我的项目中,我使用大量 h:outputtext 和 f:convertnumber 将模式应用于我的数字数据。
<h:outputText value="#{stock.price}">
<f:convertNumber currencySymbol="" groupingUsed="true" maxFractionDigits="2" type="currency" />
</h:outputText>
在需要其他数据时复制和粘贴此模式似乎很容易。但这也是难以管理的;当使用更多时,更改模式似乎需要大量的搜索/替换操作。
我怎样才能使这种模式在一个中心位置可重用和管理。
【问题讨论】:
标签:
java
jsf
jsf-2
primefaces
【解决方案1】:
最简单的方法是创建一个自定义转换器,该转换器扩展了所需的标准转换器,并在其中您在构造函数中设置所需的默认值。
@FacesConverter("defaultNumberConverter")
public class DefaultNumberConverter extends NumberConverter {
public DefaultNumberConverter() {
setCurrencySymbol("");
setGroupingUsed(true);
setMaxFractionDigits(2);
setType("currency");
}
}
如下使用:
<h:outputText value="#{stock.price}" converter="defaultNumberConverter" />