我在跨越SQL,jdbc,JVM和linux的时区问题上挣扎.
我可以看到我需要从jdbc获取/获取的类是java.sql.date.所以我阅读了文档,并且无法做任何事情.
据我了解,java.util.Data和java.sql.date都包含自纪元以来的毫秒数.
当我看到java.sql.date的构造函数的定义时,它说
"使用给定的毫秒时间值构造Date对象.如果给定的毫秒值包含时间信息,则驱动程序将时间组件设置为默认时区(运行应用程序的Java虚拟机的时区)中的时间.对应于零GMT."
好的 - 问题1 - "如果给定的毫秒值包含时间信息"可能是什么意思 - 显然它包含一些时间信息!
它们是否意味着"如果你给例程的毫秒数不代表一个确切的日界,考虑到闰秒等等"?这听起来是一个相当随机的测试,以满足/失败!
或者他们的意思是"为了天堂的缘故,在中午附近给我们一些东西,我们会把它截断到有问题的一天的开始?
问题2 - 用语言来说,这个奇怪的条款"FOR"是什么?显然,这种行为旨在使一些齿轮正确啮合 - 但它们的齿轮是什么?