我有一个表,其数据类型为DATETIME.我使用java在此表中保留记录,并按如下方式计算当前日期.Date date = Calendar.getInstance(TimeZone.getTimeZone(UTC)).getTime();但当我检查我的桌子时,它再次将此时间转换为当地...
我有一个表,其数据类型为DATETIME.我使用java在此表中保留记录,并按如下方式计算当前日期.
Date date = Calendar.getInstance(TimeZone.getTimeZone("UTC")).getTime();
但当我检查我的桌子时,它再次将此时间转换为当地时区.
有人可以向我解释,如何在数据库中以UTC时区存储日期.
@码
我有一个db实体’Referral’对应于具有日期成员数据类型的表作为java.util.Date并使用hibernate来保存它.
Referral ref = new Referral();
ref.setCreationDate(Calendar.getInstance(TimeZone.getTimeZone("UTC")).getTime());
referralDAO.save(ref);
谢谢
Jitendra
解决方法:
MySql DATETIME以时区无关的方式存储.它只存储年/月/日/小时/分钟/秒
您如何解释该信息取决于您和您的应用程序.
如果您将其存储为UTC,那么当您检索它时,您必须确保将其解释为UTC.
您可能对此SO问题感兴趣:How can I get the current date and time in UTC or GMT in Java?
如该问题的答案中所述:
java.util.Date is always in UTC.
What makes you think it’s in local
time? I suspect the problem is that
you’re displaying it via an instance
of Calendar which uses the local
timezone, or possibly using
Date.toString() which also uses the
local timezone.
本文标题为:java – mysql中UTC的日期
基础教程推荐
- java对list<Object>进行手动分页实现 2023-03-21
- Java MyBatis框架环境搭建详解 2023-04-12
- java实现周期性执行(定时任务) 2023-05-09
- Spring mvc实现Restful返回json格式数据实例详解 2023-08-01
- SpringBoot2学习之springboot与spring区别分析 2022-11-20
- Java深入分析讲解反射机制 2022-11-29
- 利用JavaMail发送HTML模板邮件 2023-04-12
- Java利用Netty时间轮实现延时任务 2023-04-18
- spring data jpa 创建方法名进行简单查询方式 2022-10-24
- servlet+JSP+mysql实现文件上传的方法 2023-08-03