Java.sql.Date到Oracle数据库的日期和时间戳

时间:2012-07-25 10:02:31

标签: sql spring date jdbc

我正在使用Spring JDBC模板进行jdbc操作。 由于我使用的是BeanPropertySqlParameterSource,因此bean的START_TIME变量分配了java.sql.date类型。 在Oracle db中,该列被称为“DATE”类型(并且没有TIMESTAMP类型,即使db是10.2 ver)

现在我设置

bean.setStartTime(new Date(System.currentTime()) 

它以日期和时间戳存储为00:00:00

请告诉我如何存储时间戳。

2 个答案:

答案 0 :(得分:7)

您需要使用java.sql.Timestamp

 bean.setStartTime(new java.sql.Timestamp(...))

java.sql.Date删除时间部分

From the Javadocs:

  

为了符合SQL DATE的定义,java.sql.Date实例包含的毫秒值必须通过在特定时区中将小时,分钟,秒和毫秒设置为零来“标准化”实例与之关联。

答案 1 :(得分:0)

java.util.Date today = new java.util.Date();
java.sql.Date d=new java.sql.Date(today.getTime());