如何转换GMT?

时间:2012-08-03 05:43:17

标签: java

我试图从数据库中获取数据,如..

       while(rs.next())
               {
                java.sql.Timestamp t=rs.getTimestamp("date");

                }

现在我想将Timestamp't'转换为java.util.Date类型。 在那我正在尝试

Date d=new Date(t);//but hear given error
System.out.println(d);
System.out.println(d.toGMTString());

1 个答案:

答案 0 :(得分:2)

java.sql.Timestamp已经扩展java.util.Date,因此您无需执行任何操作:

Date date = t;

您应该阅读Timestamp的文档,了解一些潜在意外行为的详细信息,特别是:

  

由于Timestamp类和上面提到的java.util.Date类之间存在差异,因此建议代码不要将Timestamp值一般视为java.util.Date的实例。 Timestamp和java.util.Date之间的继承关系实际上表示实现继承,而不是类型继承。

(我将其翻译为“哎呀,我们使用继承,我们应该使用组合。”)

要解决此问题,您可能需要使用:

Date date = new Date(t.getTime());