今天在写第一个jsp页面的时候,使用到SimpleDateFormat来格式化显示当前系统的时间。但是当我使用以下的代码的时候,却报错。
<%@page import="java.text.SimpleDateFormat"%>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>一个简单的JSP也面--显示系统时间</title>
</head>
<body>
<%
Date date = new Date();
SimpleDateFormat df =new SimpleDateFormat("YYYY-MM-DD HH:MM:SS");
String today = df.format(date);
%>
当前系统时间: <%=today %>
</body>
</html>
严重: Servlet.service() for servlet jsp threw exception
java.lang.IllegalArgumentException: Illegal pattern character 'Y'
然上网查一下,发现原来是参数用错了。
下面将各个参数的意义摘录如下,(来自http://zhidao.baidu.com/question/78013693.html)
字母 日期或时间元素 表示 示例 G Era 标志符 Text AD y 年 Year 1996; 96 M 年中的月份 Month July; Jul; 07 w 年中的周数 Number 27 W 月份中的周数 Number 2 D 年中的天数 Number 189 d 月份中的天数 Number 10 F 月份中的星期 Number 2 E 星期中的天数 Text Tuesday; Tue a Am/pm 标记 Text PM H 一天中的小时数(0-23) Number 0 k 一天中的小时数(1-24) Number 24 K am/pm 中的小时数(0-11) Number 0 h am/pm 中的小时数(1-12) Number 12 m 小时中的分钟数 Number 30 s 分钟中的秒数 Number 55 S 毫秒数 Number 978 z 时区 General time zone Pacific Standard Time; PST; GMT-08:00 Z 时区 RFC 822 time zone -0800