![]() |
1
603
恭喜你,我最喜欢JDBC:日期类处理。
基本上,数据库通常至少支持
三
日期时间字段的形式,包括日期、时间和时间戳。其中每一个在JDBC和JDBC中都有一个对应的类
这意味着
取决于字段的SQL类型。
请注意,如果您使用
我要说的是把毫秒/纳秒保存为普通的long,并将它们转换为您正在使用的任何对象( obligatory joda-time plug ). 一种可行的方法是将日期组件存储为一个长时间组件,将时间组件存储为另一个,例如现在的日期组件是20100221和154536123。这些神奇的数字可以在SQL查询中使用,并且可以从一个数据库移植到另一个数据库,并且可以让您完全避免JDBC/javadateapi:s的这一部分。 |
![]() |
2
65
后期编辑:
从Java8开始,两种语言都不应该使用
|
![]() |
3
20
唯一可以利用的时间
|
![]() |
4
12
|
![]() |
5
9
两个都不用。
这两个类都很糟糕,在设计和实现上都有缺陷。避免像
日期类型
第一个,
|
![]() |
6
2
java中的java.util.Date类表示时间上的特定时刻(例如,2013年11月25日16:30:45到毫秒),但DB中的日期数据类型仅表示日期(例如,2013年11月25日)。为了防止您错误地向DB提供java.util.Date对象,java不允许您直接将SQL参数设置为java.util.Date:
java.sql.Date对象可以存储时间上的某个时刻(这样就很容易从java.util.Date构造),但是如果您试图请求它几个小时(以强制执行其仅为日期的概念),它将抛出一个异常。DB驱动程序需要识别这个类,并且在几个小时内只使用0。试试这个:
|
![]() |
7
0
|