将 LocalDate 转换为 LocalDateTime 或 java.sql.Timestamp

时间:2023-04-06
本文介绍了将 LocalDate 转换为 LocalDateTime 或 java.sql.Timestamp的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我正在使用 JodaTime 1.6.2.

I am using JodaTime 1.6.2.

我有一个 LocalDate,我需要将其转换为 (Joda) LocalDateTimejava.sqlTimestamp 以进行映射.

I have a LocalDate that I need to convert to either a (Joda) LocalDateTime, or a java.sqlTimestamp for ormapping.

原因是我已经弄清楚如何在 LocalDateTimejava.sql.Timestamp 之间进行转换:

The reason for this is I have figured out how to convert between a LocalDateTime and a java.sql.Timestamp:

LocalDateTime ldt = new LocalDateTime();
DateTimeFormatter dtf = DateTimeFormatter.forPattern("yyyy-MM-dd HH:mm:ss");
Timestamp ts = Timestamp.valueOf(ldt.toString(dtf));

所以,如果我可以在 LocalDateLocalDateTime 之间进行转换,那么我可以继续转换为 java.sql.Timestamp.感谢您在正确方向上的任何推动!

So, if I can just convert between LocalDate and LocalDateTime, then I can make the continued conversion to java.sql.Timestamp. Thanks for any nudges in the right direction!

推荐答案

JodaTime

要转换 JodaTime 的 org.joda.time.LocalDatejava.sql.Timestamp,做就行了

Timestamp timestamp = new Timestamp(localDate.toDateTimeAtStartOfDay().getMillis());

要转换 JodaTime 的 org.joda.time.LocalDateTimejava.sql.Timestamp,做就行了

To convert JodaTime's org.joda.time.LocalDateTime to java.sql.Timestamp, just do

Timestamp timestamp = new Timestamp(localDateTime.toDateTime().getMillis());


Java时间

转换Java8的java.time.LocalDatejava.sql.Timestamp,就这么做

Timestamp timestamp = Timestamp.valueOf(localDate.atStartOfDay());

要转换 Java8 的 java.time.LocalDateTimejava.sql.Timestamp,就这么做

To convert Java8's java.time.LocalDateTime to java.sql.Timestamp, just do

Timestamp timestamp = Timestamp.valueOf(localDateTime);

这篇关于将 LocalDate 转换为 LocalDateTime 或 java.sql.Timestamp的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一篇:Android获取当前时间戳? 下一篇:Java 时间戳 - 如何创建日期为 23/09/2007 的时间戳?

相关文章