全国咨询/投诉热线:400-618-4000

Java培训之fmt标签详解

更新时间:2016年06月29日17时57分 来源:传智播客Java培训学院 浏览次数:


fmt标签库是用来格式化输出的,而我们今天需要学习的就是格式化日期和数字。

1.格式化日期

格式化日期的标签是:
<fmt:formatDate value=”xxx” pattern=”xxx”/>
其中两个属性代表的意思如下:
l value:指定一个Date类型的变量;
l pattern:用来指定输出的日期模板,例如:yyyy-MM-dd HH:mm:ss。
下面通过一个小例子来练习如何使用fmt的日期格式化标签来格式化日期,如下所示:
(1)在web应用Example10的WebRoot目录下新建一个jsp文件,名称为fmt.jsp,主要代码如例1-1所示:
例1-1 fmt.jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
... ...
<body>
    <%
     Date date=new Date();
     request.setAttribute("date", date);
     %>
     <fmt:formatDate value="${date }" pattern="yyyy-MM-dd HH:mm:ss"/>
</body>
例1-1中,首先创建一个Date类型的对象,然后将该对象保存在request域中,最后使用fmt的日期格式化标签对该Date类型的对象进行格式化。
(2)将Example10发布到服务器中,然后启动服务器,在浏览器端访问fmt.jsp页面,浏览器显示结果如图1-1所示:

图1-1 浏览器显示结果
需要注意的是,日期格式化标签中的value属性的值一定要是一个Date类型的变量,如果给它一个时间格式的字符串,在访问fmt.jsp页面时会报错。

2.格式化数字

fmt标签库还提供了格式化数字的标签,如下:
<fmt:formatNumber value=”xxx” pattern=”xxx”/>
标签中的两个属性代表的意义分别如下:
l value:指定数字类型的变量或常量;
l pattern:指定格式化数字的类型,例如:0.00,#.##。
下面通过一个小案例来练习如何使用数字格式化标签格式化数字,如下:
(1)在fmt.jsp页面中添加如例1-2所示代码:
此处省略例1-1中的代码
<fmt:formatNumber value="1.23" pattern="0.0"> </fmt:formatNumber>
例1-2中,value属性的值是“1.23”,是一个常量;pattern的值是“0.0”代表的是保留小数点后一位小数。
(2)浏览器端访问fmt.jsp页面,浏览器显示结果如图1-2所示:

图1-2 浏览器显示结果
(3)对例1-2稍作修改,如例1-3所示:
此处省略例1-1中的代码
<%
       request.setAttribute("num1",3.1415926);
%>
<fmt:formatNumber value="${num1 }" pattern="0.000"> </fmt:formatNumber>
例1-3中,将一个数“3.1415926”保存在request域中,然后使用数字格式化标签对其进行格式化,格式化的模板是保留小数点后三位小数。
(4)在浏览器端访问fmt.jsp,浏览器显示结果如图1-3所示:

图1-3 浏览器显示结果
由图1-3可知,pattern=“0.000”不仅保留小数点后三位小数,还进行了四舍五入。
(5)将例1-3中的数由“3.1415926”改成“3.14”,再次访问fmt.jsp,浏览器显示结果如图1-4所示:

图1-4中,3.14后面只有两位小数,而pattern的值为0.000,即保留小数点后面三位小数,不够的用0补上。
(6)将例1-3中的pattern的值改为“#.###“,然后再次访问fmt.jsp,浏览器显示结果如图1-5所示:

图1-5 浏览器显示结果
由图1-5可知,pattern为“#.###“也是保留小数点后三位小数,并进行四舍五入。
(7)再次将数“3.1415926“改成”3.14“,然后访问fmt.jsp,浏览器显示结果如图1-6所示:

图1-6 浏览器显示结果
图1-6中,格式化后的数字是“3.14“,而pattern的值为”#.###“是保留小数点后三位数字,如果位数不够三位,不补0,按原样输出。这一点与“0.000”不同。

本文版权归传智播客Java培训学院所有,欢迎转载,转载请注明作者出处。谢谢!
作者:传智播客Java培训学院
首发:http://www.itcast.cn/javaee

javaee

python

web

ui

cloud

test

c

netmarket

pm

Linux

movies

robot

uids

北京校区

    14天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    20天免费试学

    基础班入门课程限时免费

    申请试学名额

    8天免费试学

    基础班入门课程限时免费

    申请试学名额

    20天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    0天免费试学

    基础班入门课程限时免费

    申请试学名额

    12天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    10天免费试学

    基础班入门课程限时免费

    申请试学名额