要使用格式化标签库需要先引入标签库
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
fmt:formatDate标签
该标签用于使用不同的模式格式化日期。其常用属性有:
- value:将要被格式化的数据
- pattern:格式化的模式。其与 SimpleDateFormat 的参数设置方式相同。
- var:格式化后的字符串所要存放的变量。若不指定 var,则会将格式化过的结果直接显示在页面
- scope:变量存放的域属性空间,取值为 page、request、session、application。默认为page 范围
- type:其取值为 date、time,或 both,表示给出的 value 是日期、时间,还是两者都包含。默认为 date
<%
Date date = new Date();
pageContext.setAttribute("date", date);
%>
<form action="">
<!-- 在页面中直接显示 -->
<fmt:formatDate value="${date }" pattern="yyyy-MM-dd"/>
<br>
<!-- 将格式化后的日期显示在表格中 -->
<fmt:formatDate value="${date }" var="birth" pattern="yyyy-MM-dd"/>
<input type="text" name="birthdat" value="${birth }">
</form>
fmt:parseDate标签
该标签用于将指定字符串转换为日期类型。常用的属性有:
- value:将要被转换的数据
- pattern:将要被转换的数据的模式。其与 SimpleDateFormat 的参数设置方式相同。
- var:转换后的日期类型数据所要存放的变量。若不指定 var,则会将转换过的结果直接显示在页面
- scope:变量存放的域属性空间,取值为 page、request、session、application。默认为page 范围。
<%
String date = "2017-10-03";
pageContext.setAttribute("date", date);
%>
<!-- 将转换后的日期直接输出在页面中 -->
<fmt:parseDate value="${date }" pattern="yyyy-MM-dd"></fmt:parseDate>
<br>
<!-- 将转换后的日期存放在指定变量中 -->
<fmt:parseDate value="${date }" var="birth" pattern="yyyy-MM-dd"></fmt:parseDate>
${birth }
fmt:formatNumber标签
<form action="">
<!-- 格式化后直接在页面显示 -->
<fmt:formatNumber value="12345.678" minIntegerDigits="6" maxFractionDigits="2"></fmt:formatNumber>
<br>
<fmt:formatNumber value="123456" minFractionDigits="2" groupingUsed="false"></fmt:formatNumber>
<br>
<!-- 格式化后存储在某个变量中 -->
<fmt:formatNumber value="12345.678" var="num1" minIntegerDigits="6" maxFractionDigits="2"></fmt:formatNumber>
<br>
<fmt:formatNumber value="123456" var="num2" minFractionDigits="2" groupingUsed="false"></fmt:formatNumber>
<br>
num1:<input type="text" name="num1" value="${num1 }">
<br>
num2:<input type="text" name="num2" value="${num2 }">
</form>
<!-- 直接在页面中显示 -->
<fmt:parseNumber value="123,456,789" integerOnly="true"></fmt:parseNumber><br>
<fmt:parseNumber value="123,456,789" integerOnly="false"></fmt:parseNumber><br>
<!-- 将结果存储在变量中并做运算 -->
<fmt:parseNumber value="123,456,789" var="num" integerOnly="true"></fmt:parseNumber><br>
${num + 1 }