【发布时间】:2021-02-16 23:26:00
【问题描述】:
我正在尝试使用 java 将2020-11-03T14:03:45.173649-05:00 转换为时间戳。
我尝试在这里使用Timestamp.valueOf("2020-11-03T14:03:45.173649-05:00");,但出现错误提示java.lang.IllegalArgumentException:Timestamp format must be yyyy-mm-dd hh:mm:ss[.fffffffff]。有没有办法将具有时区偏移的日期时间转换为时间戳?
【问题讨论】:
-
是什么让你觉得你需要一个老式的
java.sql.Timestamp?从 JDBC 4.2 开始,您可以将字符串解析为OffsetDateTime,您可以将其直接传递给PreparedStatement和其他 JDBC 类。这个故事比我在这里讲的要长,但基本上你应该使用 java.tiem,现代 Java 日期和时间 API,而不是Timestamp。
标签: java datetime timestamp timezone timezone-offset