Date类的使用总结

粗体表示主标题:下划线表示次级标题:红色的表示经常使用的方法。
总结:
1.Date:
类Date表示特定的瞬间,精确到毫秒。
。1.构造方法:
。。。1.Date():分配Date对象并初始化,以表示分配它的时间。
。。。2.Date(long date):分配对象并初始化,以表示自从标准基准时间(称为“历元(epoch)”,即1970年1月1日00:00:00 GMT)以来的指定毫秒数。
。2.方法摘要:
。。。1.after(Date when):测试此日期是否在指定日期之后。
。。。2.before(Date when):测试此日期是否在指定日期之前。
。。。3.clone():返回此对象的副本。
。。。4.compareTo(Date anotherDate):比较两个日期的顺序。
。。。5.equals(Object obj):比较两个日期的相等性。
。。。6.getTime():返回自1970年1月1日00:00:00 GMT以来,此Date对象表示的毫秒数。
。。。7.hashCode():返回此对象的哈希码值(什么是哈希码值????)。
。。。8.setTime(long time):设置此Date对象,以表示1970年1月1日00:00:00 GMT以后time毫秒的时间点。
。。。9.toString():把此Date对象转换为以下形式的String:dow mon dd hh:mm:ss zz yyyy (其中:dow是一周中的某一天————Sun,Mon,Tue,Wed,Thu,Fri,Sat)
 
2.DateFormat:
DateFormat是日期/时间格式化子类的抽象类,它以语言无关的方式和石化并解析日期或时间。
DateFormat 提供了很多类方法,以获得基于默认或给定语言环境和多种格式化风格的默认日期/时间 Formatter。格式化风格包括 FULL、LONG、MEDIUM 和 SHORT。
  • SHORT 完全为数字,如 12.13.52 或 3:30pm
  • MEDIUM 较长,如 Jan 12, 1952
  • LONG 更长,如 January 12, 1952 或 3:30:32pm
  • FULL 是完全指定,如 Tuesday、April 12、1952 AD 或 3:30:42pm PST

如果格式化多个日期,那么获取该格式并多次使用它是更为高效的做法,这样系统就不必多次获取有关环境语言和国家/地区约定的信息了。

  DateFormat df = DateFormat.getDateInstance();
  for (int i = 0; i < myDate.length; ++i) {
    output.println(df.format(myDate[i]) + "; ");
  }
 

要格式化不同语言环境的日期,可在 getDateInstance() 的调用中指定它。

  DateFormat df = DateFormat.getDateInstance(DateFormat.LONG, Locale.FRANCE);
 

还可使用 DateFormat 进行解析。

  myDate = df.parse(myString);
什么是格式化,什么是解析??
格式化(也就是日期 -> 文本)、解析(文本-> 日期)
。1.构造方法:
DateFormat():创建一个新的DateFormat。
。2.方法摘要:
。。。1.clone()
。。。2.equals(Object obj)
。。。3.format(Date date):将一个Date格式化为日期/时间字符串。
。。。4.getCalendar():获取于此日期/时间格式器关联的日历。
。。。5.getDateInstance():获取日期各时期,该格式器具有默认语言环境的默认格式化风格。
。。。6.getDateInstance(int style):获取日期格式器,该格式器具有默认语言环境的给定格式化风格。
。。。7.getDateInstance(int style,Local aLocale):获取日期格式器,该格式器具有给定语言环境的给定格式化风格。
。。。8.getDateTimeInstance():获取日期/时间格式器,该格式器具有默认语言环境的默认格式化风格。
。。。9.getDateTimeInstance(int dateStyle,int timeStyle):获取日期/时间格式器,该格式器具有默认语言环境的给定日期和时间格式化风格。
。。。10.getDateTimeInstance(int dateStyle, int timeStyle, Locale aLocale):获取日期/时间格式器,该格式器具有给定语言环境的给定格式化风格。
。。。11.getInstance():获取此日期/时间使用SHORT风格的默认日期/时间格式器。
。。。12.parse(String source):从给定字符串的开始解析文本,以生成一个日期。
。。。13.parse(String source,ParsePosition pos):根据给定的解析位置开始解析日期/时间字符串。
。。。14.parseObject(String source,ParsePosition pos):解析字符串中的文本,以生成一个Date。
3.SimpleDateFormat:
SimpleDateFormat是一个以与语言环境有关的方式来格式化和解析日期的具体类。
其方法与DateFormat类似。
 
系统中的Date使用:
1.解析:从前台得到数据,存入到数据库中,需要进行数据转换,即解析的过程。
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String strDate = "2012-3-1";
Date date=sdf.parse(strDate);
注:strDate代表前台得来的字符串数据。
date代表解析后的可以存入数据库中的Date类型的数据。
2.格式化:从后台得到的数据是Date类型,传到前台后是待时分秒的格式,需要进行数据转换,即格式化过程。
。。。1.在jsp中处理:
$("#zhiweifabu_view_releaseDate").text($.KendoUtils.formatDate(new Date(
${actionBean.position.releaseDate}),'yyyy-MM-dd'));
注:通过new Date 处理。
。。。2.在js中处理:
  Date d=(Date)position.get("releaseDate"); position.put("releaseDate", d.getTime());//将date转换为字符//(此处为在actionBean中提前将后台得到的数据处理为长整型,即毫秒数)
$("#zhiweifabu_view_releaseDate").text($.KendoUtils.formatDate(${actionBean.position.releaseDate},'yyyy-MM-dd'));
listview 时间转换
<dd>#=$.KendoUtils.formatDate(releaseDate,'yyyy-MM-dd')#</dd>
#=$.KendoUtils.formatDate(releaseDate,'yyyy-MM-dd')#//kendo ui处理
 
。。。3.actionBean处理:
ziyuanxiazai=(List<Map<String, Object>>) result;
for(Map<String, Object> temp:ziyuanxiazai.subList(0, ziyuanxiazai.size())){
DateFormat df = DateFormat.getDateInstance();
temp.put("publishDate", df.format( temp.get("publishDate") ));
}
return new ForwardResolution(UI_ROOT_PREFIX+ "/home/ziyuanxiazai/desktopView.jsp");
posted @ 2013-04-09 19:38  艾可儿1314  阅读(301)  评论(0编辑  收藏  举报