存储和查询时的Java日期问题?

存储和查询时的Java日期问题?,java,mysql,hibernate,date,datetime,Java,Mysql,Hibernate,Date,Datetime,我正在使用Java1.7和mysql数据库。mysql数据库设置为UTC时区。我有下面的代码保存到数据库的日期 在保存时,我正在使用 new java.util.Date() 如果我想通过UI按日期范围搜索,我有以下代码 Javascript文件: 弹簧控制器: 我在毫秒内得到上述日期,并且日期对象是在毫秒内创建的,如下所示 new Date(postCreatedBeforeInMillis); new Date(postCreatedAfterInMillis); 现在,如果我将上述日期

我正在使用Java1.7和mysql数据库。mysql数据库设置为UTC时区。我有下面的代码保存到数据库的日期

在保存时,我正在使用

new java.util.Date()
如果我想通过UI按日期范围搜索,我有以下代码

Javascript文件: 弹簧控制器: 我在
毫秒内得到上述日期,并且日期对象是在毫秒内创建的,如下所示

new Date(postCreatedBeforeInMillis);
new Date(postCreatedAfterInMillis);
现在,如果我将上述日期对象发送到数据库进行
日期范围搜索
,搜索时会出现任何问题吗?因为mysql db设置为UTC,但上述日期不在UTC中。我是否需要将上述日期转换为UTC来搜索mysql数据库


谢谢

AFAIK
java.util.Date
没有时区。顺便问一下,你为什么不使用日历呢?如果util Date中没有时区,那么mysql会以UTC格式存储它吗?当然,应该,尽管我肯定会测试它。在查询时,如果我发送util Date,在查询mysql之前,日期会转换成UTC吗?bcaz mysql日期是UTC格式的。好吧,实际上应该没有转换,因为java.util.Data基本上是UTC格式的。
new Date(postCreatedBeforeInMillis);
new Date(postCreatedAfterInMillis);