问题:不能将给定的对象格式 为一个数字。
错误代码:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
</head>
<%
Date date = new Date();
request.setAttribute("date", date);
%>
<body>
<%=date %>
<fmt:formatNumber pattern="#.##" value="100.99"></fmt:formatNumber>
<fmt:formatNumber pattern="yyyy-MM-dd" value="${date }"/>
</body>
</html>
解决方法:把<fmt:formatNumber pattern="yyyy-MM-dd" value="${date }"/>改成:<fmt:formatDate pattern="yyyy-MM-dd" value="${date }"/>即可!
小知识:格式化金额
格式1: 0.00 保留2为小数,会自动补0,
如:<fmt:formatNumber pattern="0.00" value="100"></fmt:formatNumber>,浏览器显示:100.00
格式2: #.## 保留2为小数,不自动补0,
如:<fmt:formatNumber pattern="#.##" value="100"></fmt:formatNumber>,浏览器显示:100