數字是一個用來表示事物的普遍概念,像年齡,薪水,百分比,金錢等等。我們知道數字可以是整數,浮點數,雙精度實數,在不同的場合,我們需要不同的數字,還有不同的數字標記。下面我們來看一個JSF自帶的標準的數字轉換器的例子。
standardConverterNumbers.xhtml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:c="http://java.sun.com/jsp/jstl/core">
<h:head>
<title>myjsf</title>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
</h:head>
<h:body>
<h:form id="form">
<b>
<h:outputText value="#{numbersBean.doubleNumber}">
<f:convertNumber type="number" maxIntegerDigits="5" maxFractionDigits="5"
groupingUsed="false">
</f:convertNumber>
</h:outputText>
<br/>
<h:outputText value="#{numbersBean.doubleNumber}">
<f:convertNumber type="number" maxIntegerDigits="5" maxFractionDigits="0">
</f:convertNumber>
</h:outputText>
<br/>
<h:outputText value="#{numbersBean.doubleNumber}">
<f:convertNumber type="currency" currencySymbol="$" maxIntegerDigits="5" maxFractionDigits="2">
</f:convertNumber>
</h:outputText>
<br/>
<h:outputText value="#{numbersBean.doubleNumber}">
<f:convertNumber type="percent" maxIntegerDigits="5" maxFractionDigits="5">
</f:convertNumber>
</h:outputText>
<br/>
<h:outputText value="#{numbersBean.doubleNumber}">
<f:convertNumber pattern="####,00%">
</f:convertNumber>
</h:outputText>
</b>
</h:form>
</h:body>
</html>
@ManagedBean(name="numbersBean")
@SessionScoped
public class NumbersBean {
private double doubleNumber = 12345.12345;
public double getDoubleNumber() {
return doubleNumber;
}
public void setDoubleNumber(double doubleNumber) {
this.doubleNumber = doubleNumber;
}
}
輸出的結果如下:
convertNumber的各參數的含義,下次再添加,不過不難理解。