我第一次创建了一个使用java.sql.Date
的常规实体。之后,我将导入更改为java.util.Date
,并且体验到查询所花的时间比以前多得多。
我开始研究此问题,并意识到,如果将@Temporal(TemporalType.DATE)
添加到java.util.Date
,它将很快变得很快。
此行为很奇怪,因为在两种情况下都从数据库中获取了0值,因此我们不能说它是由于实体的Date转换而发生的。
我们正在使用Oracle数据库,并且相应的日期列的数据类型为DATE
。
java.util.Date
:30-35秒java.sql.Date
:7-8秒您是否知道在java.util.Date
情况下会导致这种缓慢的原因?
答案 0 :(得分:0)
总结一下,
java.sql
程序包包含JDBC
类型,这些类型与SQL
标准定义的类型对齐。
类型java.util.Date
包含日期和时间信息,精度最高为毫秒。但这与任何SQL
类型都没有直接关系。
因此,除非性能绝对必要,否则我不必担心性能。