- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
此代码片段:
private Date fetchTimestampFromDatabase(SqlRowSet rs, String field) {
try {
System.out.println(rs.getTimestamp(field));
for (int i = 0; i < 10; i++) {
System.out.println(rs.getTimestamp(field, Calendar.getInstance(TimeZone.getTimeZone("UTC"))));
Thread.sleep(200);
...
给出以下结果:
2014-06-06 10:44:58.696
2014-06-06 12:44:58.75
2014-06-06 12:44:58.95
2014-06-06 12:44:58.15
2014-06-06 12:44:58.35
2014-06-06 12:44:58.55
2014-06-06 12:44:58.75
2014-06-06 12:44:58.95
2014-06-06 12:44:58.15
2014-06-06 12:44:58.35
2014-06-06 12:44:58.55
太好了,时区偏移量已正确应用,但到底为什么毫秒会出现抖动(大概是从日历实例中获取的)?
阅读该方法的 javadoc,我发现了一个相当含糊的声明,似乎暗示这是按照指定的方式运行的:
"This method uses the given calendar to construct an appropriate millisecond value for the timestamp"
the source file第6180行证实了这一点:
cal.set(Calendar.YEAR, defaultCal.get(Calendar.YEAR));
cal.set(Calendar.MONTH, defaultCal.get(Calendar.MONTH));
cal.set(Calendar.DAY_OF_MONTH, defaultCal.get(Calendar.DAY_OF_MONTH));
cal.set(Calendar.HOUR_OF_DAY, defaultCal.get(Calendar.HOUR_OF_DAY));
cal.set(Calendar.MINUTE, defaultCal.get(Calendar.MINUTE));
cal.set(Calendar.SECOND, defaultCal.get(Calendar.SECOND));
return new java.sql.Timestamp(cal.getTime().getTime());
有人知道为什么没有设置 Calendar.MILLISECOND 吗?
干杯
最佳答案
文档似乎确实表明预计在日历中提供毫秒值。然而,它与documentation有些不同。 ResultSet(RowSet 从中扩展)。
This method uses the given calendar to construct an appropriate millisecond value for the timestamp if the underlying database does not store timezone information.
这似乎将两个看似不相关的概念联系在一起 - 数据库中时区信息的存在和数据库中时间戳字段的精度。
源代码中的问题实际上是在日历填充之前开始的:
defaultCal.setTime((java.util.Date)value);
通过将时间戳转换为 java.util.Date,所有部分秒数据都会丢失。如 Timestamp 中所述javadoc:
Note: This type is a composite of a java.util.Date and a separate nanoseconds value. Only integral seconds are stored in the java.util.Date component.
关于java - 奇怪的 Java SQL 时间戳日历检索行为 - 从日历中获取毫秒?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24080057/
给定一个带有多个 date_time 戳的字符串,我想 提取第一个戳及其前面的文本 候选字符串可以有一个或多个时间戳 后续的 date_time 戳记将被 sep="-" 隔开 后续date_time
是否可以合并从相机拍摄的文本和照片?我想在照片上标记日期和时间,但我在 Google 上找不到任何内容。 最佳答案 使用下面的代码来实现你所需要的。 Bitmap src = Bitm
有没有办法通过 Graph API 戳另一个用户?基于this post ,并使用 Graph Explorer ,我发布到“/USERID/pokes”,我已经授予它(Graph API 应用程序和
我有两个向左浮动的元素。一个是 body 的第一个 child ,另一个是容器的第一个 child ,容器是 body 的第二个 child 。 ...
我是一名优秀的程序员,十分优秀!