java - 从毫秒转换为 MYSQL 日期

标签 java

嗨,我需要将毫秒转换为日期。 MYSQL 也应该可以接受该日期。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.US);
GregorianCalendar calendar = new GregorianCalendar(TimeZone.getTimeZone("US/Central"));
calendar.setTimeInMillis(System.currentTimeMillis());
System.out.println("GregorianCalendar -" + sdf.format(calendar.getTime()));

我尝试了这个例子,但这里“sdf.format(calendar.getTime()”这个方法给出了以下格式的字符串。 “yyyy-MM-dd HH:mm:ss”

但我希望日期对象也采用上述格式(yyyy-MM-dd HH:mm:ss)。

那么如何将其转换为日期格式。

请帮我解决这个问题...

提前谢谢...:)

最佳答案

我们将日期或时间戳作为字符串存储在数据库中。因此,以特定格式保存是没有意义的。您只需将它们保存为 SQL Timestamp,然后使用 Date 格式函数(无论是在 Java 中还是在后端使用PL/SQL)每当您需要显示或需要它们的字符串表示形式时。

因此,使用java.sql.Timestamp作为

Timestamp dbDateTime = new java.sql.Timestamp(System.currentTimeMillis()); // or
Timestamp dbDateTime = new java.sql.Timestamp(calendar.getTimeInMillis());

编辑: 如果 DOB 字段的类型为 java.util.Date 则使用

Timestamp dbDateTime = new java.sql.Timestamp(dob.getTime());

如果字段的类型为java.sql.Date,那么您可以按原样保存它(如果后端列也是DATE类型),或者使用相同的上面的代码首先将其转换为 Timestamp

关于java - 从毫秒转换为 MYSQL 日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17490221/

相关文章:

java - 如何动态循环数组列表并添加每个第 n 个元素

java - 如何在 Java 8 (Spring Boot) 应用程序中设置最大非堆内存?

java - 解析 Web 服务响应时出现 MalformedURLException

java - 如何以编程方式将 ChartPanel 中的当前图表保存为 PNG?

java - 创建和发送自定义事件

java - 从字符串中删除每 8 个字符

java - 从 SQLite 数据库检索数据并将其存储在数组中时出现 Android NullPointerException

java - 带 64 位 JVM 的 MS Access 32 位

java - 如何在 Spring 分页中获取下一页

java - 如何解决这个 java.lang.ClassCastException : org. apache.tomcat.dbcp.dbcp.BasicDataSource cannot be cast to org.apache.tomcat.jdbc.pool.DataSource?