如何将字符串解析为java.sql.date

时间:2010-09-23 14:38:04

标签: java sql date jdbc formatting

您好我正在尝试将字符串解析为java.sql.date

这就是我正在做的事情

private static SimpleDateFormat sdfout = new SimpleDateFormat("yyyy.MM.dd.HH.mm");
          try{
            String date = "2010.09.30.13.18";
        task.setDueDate(new java.sql.Date(sdfout.parse(date).getTime()));
    }

问题是我只能收到约会。不是时候。

我这样做是否正确

2 个答案:

答案 0 :(得分:4)

代码逻辑很好,您只需要java.sql.Timestamp而不是java.sql.Date。 SQL时间戳表示日期和时间部分,例如Java中的日期。 SQL日期仅代表日期部分。

另见:


注意应该是您应该在模型对象中优先java.util.Date而不是java.sql.Timestamp,并且只在您将要在SQL查询中设置它时使用Timestamp 。这将模型对象与JDBC API分开,并提高了它们的可移植性和可重用性。

答案 1 :(得分:0)

java.sql.Date(根据JavaDoc)

  

一个薄的包装纸,大约一毫秒   允许JDBC识别的值   这是一个SQL DATE值。

它返回给您一个SQL DATE 的表示。

java.sql.Time(根据JavaDoc)

  

一个薄薄的包装纸   允许的java.util.Date类   JDBC API将其标识为SQL   时间价值。

它返回给您一个SQL TIME 的表示。

如果您同时想要日期和时间,请使用java.util.Date代替java.sql.Date。: