如何将 LocalDate 转换为 SQL 日期 Java?
How to convert LocalDate to SQL Date Java?
如何将 LocalDate 转换为 java.sql.Date
?
尝试:
Record r = new Record();
LocalDate date = new Date(1967, 06, 22);
r.setDateOfBirth(new Date(date));
这失败了(无法编译),我能找到的只是 Joda 时间的东西。
我正在使用 Java 8
答案很简单;
import java.sql.Date;
...
LocalDate locald = LocalDate.of(1967, 06, 22);
<strong>Date date = Date.valueOf(locald); // Magic happens here!</strong>
r.setDateOfBirth(date);
如果你想反过来转换它,你可以这样做:
Date date = r.getDate();
LocalDate localD = date.toLocalDate();
r
是您在 JOOQ 中使用的记录,.getDate()
是从记录中获取日期的方法;假设您有一个名为 date_of_birth 的日期列,那么您的 get 方法应称为 getDateOfBirth()
.
您是否尝试过使用 LocalDate 的 toDate() 方法?
如:
Record r = new Record();
LocalDate date = new Date(1967, 06, 22);
r.setDateOfBirth(date.toDate());
一般来说,最好说明 它是如何失败的,而不是仅仅说 "it fails".
如果你想要当前日期:
Date date = Date.valueOf(LocalDate.now());
如果你想要一个具体的日期:
Date date = Date.valueOf(LocalDate.of(1967, 06, 22));
如何将 LocalDate 转换为 java.sql.Date
?
尝试:
Record r = new Record();
LocalDate date = new Date(1967, 06, 22);
r.setDateOfBirth(new Date(date));
这失败了(无法编译),我能找到的只是 Joda 时间的东西。
我正在使用 Java 8
答案很简单;
import java.sql.Date;
...
LocalDate locald = LocalDate.of(1967, 06, 22);
<strong>Date date = Date.valueOf(locald); // Magic happens here!</strong>
r.setDateOfBirth(date);
如果你想反过来转换它,你可以这样做:
Date date = r.getDate();
LocalDate localD = date.toLocalDate();
r
是您在 JOOQ 中使用的记录,.getDate()
是从记录中获取日期的方法;假设您有一个名为 date_of_birth 的日期列,那么您的 get 方法应称为 getDateOfBirth()
.
您是否尝试过使用 LocalDate 的 toDate() 方法?
如:
Record r = new Record();
LocalDate date = new Date(1967, 06, 22);
r.setDateOfBirth(date.toDate());
一般来说,最好说明 它是如何失败的,而不是仅仅说 "it fails".
如果你想要当前日期:
Date date = Date.valueOf(LocalDate.now());
如果你想要一个具体的日期:
Date date = Date.valueOf(LocalDate.of(1967, 06, 22));