2012-10-31 71 views
0

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

+1

你的数据库列是一个真正的日期类型(日期,时间戳等)还是他们是一个字符串? –

+0

我的列是真正的日期类型 - 在这一刻DATE在postgresql中,但我也对其他日期类型和数据库的知识感兴趣。 –

回答

1

您可以使用支持自定义类型的ORM。例如,sormula Joda Time example。实施TypeTranslatorLocalDateTranslator和相应类的所有用途,LocalDate,将使用类型转换器来转换/从列中的数据库。

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

如果你有一个时间戳,并希望将其转换回MutableDateTime,你只需要

new MutableDateTime(timestamp.getTime()); 
0

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

相关问题