我有一个java.sql.Time
(00:04:24)
,我想从中获取毫秒(或秒):
ResultSet rs = ...;
java.sql.Time time = rs.getTime("DURATION");
long millis = time.getTime();
但是结果是-3336000
而不是264000
。
单击here查看我的输出。
为什么没有输出264000
?
如果使用的是现代JDBC版本,则可以使用:
LocalTime time = rs.getObject("DURATION", LocalTime.class);
long millis = time.toSecondOfDay() * 1000 + time.get(MILLI_OF_SECOND);
不幸的是,关于毫秒的计算,没有方法可以获取当天的毫秒,因为我使用了这种方法。