JSF轉換器(converter),數字(number)

數字是一個用來表示事物的普遍概念,像年齡,薪水,百分比,金錢等等。我們知道數字可以是整數,浮點數,雙精度實數,在不同的場合,我們需要不同的數字,還有不同的數字標記。下面我們來看一個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>


bean如下:

@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的各參數的含義,下次再添加,不過不難理解。

發佈了55 篇原創文章 · 獲贊 6 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章