2

我是joda-time的新手,我没有找到任何例子来做一些简单的事情。

我想创建一个对象来保存从数据库中的表中读取的时间值(java.sql.Time例如"18:30:00")我不关心时区,所以我认为我需要LocalDate. 但问题是我无法LocalDate基于该对象创建Time对象。

我试过没有成功LocalDate.fromDateFields(),,,DateTimeParser.parseInto()DateTimeParser.parseDateTime()

编辑:我应该使用LocalTime. 这些工作:

java.sql.Time time = Time.valueOf("18:30:00");
LocalTime lt1 = LocalTime.fromDateFields(time);
LocalTime lt2 = new LocalTime(time);
4

1 回答 1

4

根据文档,您应该能够通过将 java.util.Date 作为唯一的构造函数参数传递给 LocalDate 来直接构造它。由于 java.sql.Time 扩展了 java.util.Date,您应该能够

final LocalDate ld = new LocalDate(mySqlTime);

这对我有用:

System.out.println(new LocalDate(Time.valueOf("18:30:00")));

另一方面,这不是一件有意义的事情,因为你总是会得到 1970 年 1 月 1 日。但我想你知道你在做什么。

于 2009-12-14T14:25:49.777 回答