在数据库中插入/选择joda-time日期类型

时间:2012-10-31 22:34:29

标签: java jdbc jodatime

使用JDBC将jodatime对象插入数据库的最佳方法是什么,以及如何从中获取它们?我以前使用MutableDateTime,并在插入之前将其转换为Timestamp。但是,当我想从数据库中获取数据时,我遇到了一个问题..我不知道该怎么做,以及如何解析类型。再一次:如何在数据库中插入和选择Joda-Time对象。

3 个答案:

答案 0 :(得分:1)

如果您有时间戳,并希望将其转换回MutableDateTime,则只需要

new MutableDateTime(timestamp.getTime());

答案 1 :(得分:1)

您可以使用支持自定义类型的ORM。例如,sormula Joda Time example。实施类似 LocalDateTranslator TypeTranslator,对应类 LocalDate 的所有使用都将使用类型转换器转换为db中的列。

@ExplicitType(type=LocalDate.class, translator=LocalDateTranslator.class)
public class StudentLD
{
    int id;
    String firstName;
    String lastName;
    LocalDate graduationDate;
...

答案 2 :(得分:0)

JodaTime objets比DateTime数据类型更具表现力,而不是SQL和大多数(如果不是全部)数据库支持,因此没有一般的万无一失的配方。 Related question