I'm unable to understand the documentation for java.sql.date
我正在努力解决跨SQL、JDBC、JVM和Linux的时区问题。
我可以看到我需要从jdbc中获取的类是java.sql.date。所以我读了文件,却什么都做不到。
据我所知,java.util.data和java.sql.date自epoch以来都保持了数毫秒的时间。
当我查看java.sql.date的构造函数定义时,它说
"使用给定的毫秒时间值构造日期对象。如果给定的毫秒值包含时间信息,则驱动程序将时间组件设置为默认时间区(运行应用程序的Java虚拟机的时区)对应于零GMT的时间。
好的-问题1-"如果给定的毫秒值包含时间信息"的含义是什么-显然它包含一些时间信息!!!!
他们的意思是"如果你给程序的毫秒数不代表一个精确的日边界,考虑到闰秒等"??这听起来是一个相当随机的测试来满足/失败!
或者他们的意思是"为了上帝的缘故,在接近中午的时候给我们一些东西,我们会把它截短到有问题的一天的开始?
问题2——用词来说,这个奇怪的条款是"为了"什么?很明显,这是为了使某些齿轮正确啮合的行为——但它们是什么齿轮?
- 蛛网膜下腔出血(SAH)milliseconds圆形
java.sql.Date 午夜-这是"零的日期与时间 java.sql.Time SAH milliseconds小于24小时,它是像1970-01-01 java.util.Date 在线- 蛛网膜下腔出血(SAH)的日期和时间
java.sql.Timestamp 全样调节java.util.Date
java.sql.date表示只有日期,没有任何信息在它的时间。java.sql.time应使用时间。
如果我是你,我会避免使用millisecond构造函数。相反,使用