当前位置:  编程技术>java/j2ee

Java中Date,Calendar,Timestamp的区别以及相互转换与使用

    来源: 互联网  发布时间:2014-10-27

    本文导语:  1 Java.util.Date包含年、月、日、时、分、秒信息。 代码如下:// String转换为DateString dateStr="2013-8-13 23:23:23";String pattern="yyyy-MM-dd HH:mm:ss";DateFormate dateFormat=new SimpleDateFormat(pattern);Date date=dateFormat.parse(dateStr);date=dateFormat.format(date);2 Java....

1 Java.util.Date
包含年、月、日、时、分、秒信息。

代码如下:

// String转换为Date
String dateStr="2013-8-13 23:23:23";
String pattern="yyyy-MM-dd HH:mm:ss";
DateFormate dateFormat=new SimpleDateFormat(pattern);
Date date=dateFormat.parse(dateStr);
date=dateFormat.format(date);

2 Java.sql.Date
包含年、月、日信息。
继承自java.util.Date。在数据库相关操作中使用,如rs.getDate,ps.setDate等。rs是指ResultSet,ps是指PreparedStatement。
代码如下:

// java.util.Date转换为java.sql.Date
new java.sql.Date(utilDate.getTime());// 其中utilDate为java.util.Date类型的对象

3 Java.util.Calendar
包含年、月、日、时、分、秒、毫秒信息。
JDK1.1引入,用以代替java.util.Date。
代码如下:

// Date转为Calendar
Date date=new Date();
Calendar calendar=Calendar.getInstance();
calendar.setTime(date);

// Calendar转为Date
Calendar ca=Calendar.getInstance();  
Date d =(Date) ca.getTime();


4 Java.sql.Timestamp
包含年、月、日、时、分、秒、纳秒(nano)信息。
继承自java.util.Date。比java.sql.Date包含更多信息。在数据库相关操作中使用,如rs.getTimestamp,ps.setTimeStamp等。例如:若数据库中某字段hireDate为Oracle的Date类型,则使用getTimestamp时能够将年、月、日、时、分、秒信息取出;但使用getDate时则只能取出年、月、日信息。因此,一般推荐使用getTimestamp。
代码如下:

// java.util.Calendar转换为java.sql.Timestamp
new Timestamp(Calendar.getInstance().getTimeInMillis());
// java.util.Date转换为java.sql.Timestamp
new Timestamp(date.getTime());
// String转换为java.sql.Timestamp,String格式:yyyy-mm-dd hh:mm:ss[.f...] ,方括号表示可选
Timestamp.valueOf("2013-07-06 01:49:30");

5 Oracle数据库提供的日期和时间类型
Oracle数据库提供了DATE,TIMESTAMP,TIMESTAMP WITH TIME ZONE和TIMESTAMP WITH LOCAL TIME ZONE四种类型。

DATE包含世纪、年、月、日、时、分、秒信息。
TIMESTAMP是DATE的扩展,包含年、月、日、时、分、秒和fractional seconds信息。定义TIMESTAMP的格式如下:

代码如下:

TIMESTAMP [(fractional_seconds_precision)]
// 格式
TIMESTAMP 'YYYY-MM-DD HH24:MI:SS.FF'
// 一个例子
TIMESTAMP '1997-01-31 09:26:50.12'

其中fractional_seconds_precision是可选的,用于指定秒使用含几位小数的浮点数表示,它的取值范围是0到9,默认是6。上述例子中表示采用两位小数,它的秒值是50.12。注意:12不是毫秒值,也不是微秒值。

    
 
 

您可能感兴趣的文章:

  • java命名空间java.security类timestamp的类成员方法: timestamp定义及介绍
  • 如何获得系统时间,类型为java.sql.Timestamp
  • java命名空间java.sql类timestamp的类成员方法: timestamp定义及介绍
  • !!!在Java中如何取得Resultset中的datetime和timestamp字段?数据库是SQLServer
  • java命名空间java.sql类timestamp的类成员方法: equals定义及介绍
  • Java里得到00:00:00格式的时分秒的Timestamp
  • java命名空间java.sql类timestamp的类成员方法: after定义及介绍
  • java命名空间java.sql类timestamp的类成员方法: before定义及介绍
  • java命名空间java.sql类types的类成员方法: timestamp定义及介绍
  • java命名空间java.sql类timestamp的类成员方法: compareto定义及介绍
  • java命名空间java.sql类timestamp的类成员方法: getnanos定义及介绍
  • java命名空间java.sql类timestamp的类成员方法: valueof定义及介绍
  • java命名空间java.sql类timestamp的类成员方法: setnanos定义及介绍
  • java命名空间java.util类uuid的类成员方法: timestamp定义及介绍
  • java命名空间java.security类timestamp的类成员方法: getsignercertpath定义及介绍
  • java命名空间java.sql类timestamp的类成员方法: gettime定义及介绍
  • java命名空间java.security类timestamp的类成员方法: tostring定义及介绍
  • java命名空间java.security类timestamp的类成员方法: hashcode定义及介绍
  • java命名空间java.sql类timestamp的类成员方法: tostring定义及介绍
  • java命名空间java.security类timestamp的类成员方法: equals定义及介绍
  • java命名空间java.util类calendar的类成员方法: calendar定义及介绍
  • 新手提问,为什么我import java.util.Calendar;后,Calendar c=new Calendar.getInstance();却抱错呢??谢谢
  • java命名空间java.text类dateformat的类成员方法: calendar定义及介绍
  • 100 分,高手和熟练者请进,这是java.util.Calendar的Bug吗?
  • java命名空间java.util类calendar的类成员方法: compareto定义及介绍
  • java命名空间java.util类calendar的类成员方法: getinstance定义及介绍
  • java命名空间java.util类calendar的类成员方法: arefieldsset定义及介绍
  • java命名空间java.util类calendar的类成员方法: before定义及介绍
  • java命名空间java.util类calendar的类成员方法: after定义及介绍
  • java命名空间java.util类calendar的类成员方法: roll定义及介绍
  • java命名空间java.util类calendar的类成员方法: gettimeinmillis定义及介绍
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java中如何将ascII 码转换成字符以及将字符转换成ascII码? 在线等待加分!
  • 如何将java.util.Date类型的日期转换成java.sql.Date类型的日期?
  • 我在jbuilder中新建一个servlet,源程序为java文件,是怎么从java到servler转换的?
  • 在java中,怎么将UTF-8码转换为GB码?
  • java自定义枚举转换器示例
  • Java对象转换库 EZMorph
  • java DocConverter.jar转换word文档到pdf 中文乱码问题
  • java数据转换的问题
  • 一个关于java写的web应用如何转换平台的问题,急急急!!
  • java中强制转换
  • java数据类型的转换问题。
  • Java 繁简字体转换问题!!!急!!!
  • 对面的大虾看过来:sql到java的类型转换?
  • 求助java中如何在unicode和GBK2312之间转换
  • 在java中如何实现String到int型的转换???用什么方法???
  • Java到C++的转换工具 J2cpp
  • 怎样将标准的C++代码转换成JAVA代码??
  • Java中的一个转换成asc码函数?
  • 请问,如何用java程序转换xsl?
  • 怎样把String转换成int?怎样获得系统时间并转换成java.sql.date类型?
  • java命名空间java.sql类types的类成员方法: java_object定义及介绍
  • 我想学JAVA ,是买THINK IN JAVA 还是JAVA2核心技术:卷1 好???
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: imageflavor定义及介绍
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • java命名空间java.lang.management类managementfactory的类成员方法: getcompilationmxbean定义及介绍
  • 如何将java.util.Date转化为java.sql.Date?数据库中Date类型对应于java的哪个Date呢
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getlibrarypath定义及介绍
  • 谁有电子版的《Java编程思想第二版(Thinking in java second)》和《Java2编程详解(special edition java2)》?得到给分
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getstarttime定义及介绍
  • 本人想学java,请问java程序员的待遇如何,和java主要有几个比较强的方向
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: stringflavor定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3