源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2022-08-15 10:02 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Java中Date,Calendar,Timestamp的区别以及相互转换与使用
[b]1 Java.util.Date [/b]包含年、月、日、时、分、秒信息。
[u]复制代码[/u] 代码如下:
// 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);
[b]2 Java.sql.Date [/b]包含年、月、日信息。 继承自java.util.Date。在数据库相关操作中使用,如rs.getDate,ps.setDate等。rs是指ResultSet,ps是指PreparedStatement。
[u]复制代码[/u] 代码如下:
// java.util.Date转换为java.sql.Date new java.sql.Date(utilDate.getTime());// 其中utilDate为java.util.Date类型的对象
[b]3 Java.util.Calendar [/b]包含年、月、日、时、分、秒、毫秒信息。 JDK1.1引入,用以代替java.util.Date。
[u]复制代码[/u] 代码如下:
// Date转为Calendar Date date=new Date(); Calendar calendar=Calendar.getInstance(); calendar.setTime(date); // Calendar转为Date Calendar ca=Calendar.getInstance();   Date d =(Date) ca.getTime();
[b]4 Java.sql.Timestamp [/b]包含年、月、日、时、分、秒、纳秒(nano)信息。 继承自java.util.Date。比java.sql.Date包含更多信息。在数据库相关操作中使用,如rs.getTimestamp,ps.setTimeStamp等。例如:若数据库中某字段hireDate为Oracle的Date类型,则使用getTimestamp时能够将年、月、日、时、分、秒信息取出;但使用getDate时则只能取出年、月、日信息。因此,一般推荐使用getTimestamp。
[u]复制代码[/u] 代码如下:
// 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");
[b]5 Oracle数据库提供的日期和时间类型 [/b]Oracle数据库提供了DATE,TIMESTAMP,TIMESTAMP WITH TIME ZONE和TIMESTAMP WITH LOCAL TIME ZONE四种类型。 DATE包含世纪、年、月、日、时、分、秒信息。 TIMESTAMP是DATE的扩展,包含年、月、日、时、分、秒和fractional seconds信息。定义TIMESTAMP的格式[b]如下: [/b]
[u]复制代码[/u] 代码如下:
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不是毫秒值,也不是微秒值。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部