java中的日期处理练习

32 篇文章 0 订阅
32 篇文章 0 订阅

package net.hfh;

import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.TimeZone;

public class DateFormat {

 public static void main(String[] args) {

  long l1 = System.currentTimeMillis();
  Date date = new Date();// Date的很多方法已经过时

  /*
   * SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
   * String str = sdf.format(date);
   */
  // 与以上两句的作用相同
  String str = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS")
    .format(date);// 查看手册
  System.out.println(str);

  // System.out.println(System.currentTimeMillis());

  // 取出当前日期中的年月日等相关的信息
  Calendar c = Calendar.getInstance();// 创建一个实例
  int year = c.get(Calendar.YEAR);// 取得年份
  System.out.println(year);
  int month = c.get(Calendar.MONTH);// 取得月份
  System.out.println(month);

  // 转换从其它地方得到的日期,如从数据库中等如何操作。
  Calendar c1 = Calendar.getInstance();
  c1.set(2005, 4, 1);
  int year1 = c1.get(Calendar.YEAR);
  System.out.println("year1----" + year1);

  /*
   //为什么不能正确的显示时间
   Date d = new Date(2004,1,3); Calendar c2 = Calendar.getInstance();
   c2.setTime(d); int year2 = c2.get(Calendar.YEAR);
   System.out.println(new SimpleDateFormat("yyyy").format(d));
   System.out.println(year2);
   */
  
  //从数据库中取出时间并格式化
  /*
  Date date = rs.getDate("cdate");
  SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");//此不能显示时,全相同
  System.out.println(sdf.format(date));
  */
  
  /*
  //可以正确显示相关的日期与时间
  Timestamp ts = rs.getTimestamp("cdate");//时间戳
  SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
  SimpleDateFormat sdf1 = new SimpleDateFormat("YYYY-mm-dd HH:mm:ss");
  System.out.println(sdf.format(ts));
  System.out.println(sdf1.format(ts));
  */
  
  //取得当前时间的方法
  // System.currentTimeMillis();
  // Date d = new Date();
  // Calendar c2 = Calendar.getInstance();
  
  //字符串变转为日期格式
  // String sdate = "2008-8-8";
  // java.sql.Date sd =
  // java.sql.Date.valueOf(sdate);//此方法常用如:从数据库中取出的字符串转为时间格式
  // System.out.println("sd---" + sd);
  // String sdate1 = "2008-8-8 23:3:32.0";
  // Timestamp ts = Timestamp.valueOf(sdate1);
  // System.out.println("ts====" +ts);
  
  //时区处理
  //取得日本的时间
  TimeZone tzJapan = TimeZone.getTimeZone("Japan");//取得时区
  Calendar cJapan = new GregorianCalendar(tzJapan);//内部参数是ID要想取得ID可以用下面的方法
  System.out.println(cJapan.get(Calendar.HOUR_OF_DAY));
  
  //取得各个有效ID
  //方法一
  String[] ss = TimeZone.getAvailableIDs();
  for(int i=0; i<ss.length; i++){
   System.out.println(ss[i]);
  }
  //方法二
  /*
  for(String str2:TimeZone.getAvailableIDs()){
   System.out.println(str2);
  }
  */
  
  long l2 = System.currentTimeMillis();
  System.out.println("执行时间为:" + (l2-l1) + "毫秒");
 }

long l2 = System.currentTimeMillis();
  System.out.println("执行时间为:" + (l2-l1) + "毫秒");
  
  //把long数转为日期格式
  String sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").format(Long.parseLong("1192578386734"));
  System.out.println(sdf);
  System.out.println("1192578386734--");
  //把日期字符串转为long型数
  String str1 = "2007-10-17 07:46:26 734";
  try {
   
   long sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS").parse(str1).getTime();
   System.out.println(sdf1);
  } catch (ParseException e) {
   e.printStackTrace();
  }

}

 

hibernate,struts,oracle
日期处理:yyyy-mm-dd hh:mm:ss.SSS的形式:
Form与实体中均用java.sql.Timestamp而hbm中也须用java.sql.Timestamp就可,在数据库中用Date型就

可以.
若处理成:yyyy-mm-dd则用java.sql.Date就可以,数据库中用Date就可以。 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值