我有一个表,其数据类型为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的日期


- HttpClient实现远程调用 2023-04-12
- Java设计模式之模板方法模式 2023-06-17
- Spring Boot详解各类请求和响应的处理方法 2023-03-11
- Java,MySQL:我保存了“ČeskáTřebová”,但保存了“?eskáT?ebová”(来自终端一切都很好) 2023-10-31
- MyBatis中不建议使用where 1=1原因详解 2023-01-24
- Java 下数据业务逻辑开发技术 JOOQ 和 SPL 2023-05-18
- oracle: jdbcTypeForNull configuration property. Cause: java.sql.SQLException: 无效的列类型: 1111 2023-11-01
- dubbo自定义异常的完整步骤与测试 2023-01-02
- 浅谈Java封装、继承、多态特性 2023-08-11
- Java浅析枚举类的使用 2023-03-22