我使用以下代码从我的Spring MVC / Hibernate应用程序收集日期:
String startMembershipDate = request.getParameter("startmembershipdate");
我在我的实体
中对此字段使用以下字段定义@Column(name="MEMBERSHIP_DATE", nullable=false, unique=false)
private Date membershipDate;
所以我想知道是否有人能够提供一个关于如何使用Joda-time将JSP中的接收日期转换为GMT格式的示例?
我还应该将字段定义从Date更改为DateTime吗?时间戳?
答案 0 :(得分:2)
查看此问题如何在Date
和DateTime
之间进行转换:Convert from java.util.date to JodaTime
此问题告诉您如何使用GMT格式化DateTime
:JodaTime DateTime, ISO8601 GMT date format
如果需要,您可以将字段定义更改为DateTime
。你只需要编写一个自定义的Hibernate映射器。我们在这里这样做并且它运行良好(特别是因为我们将日期保存为DECIMAL(16)
所以我们不会因为奇怪的SQL DATE
实现,驱动程序错误,......而得到愚蠢的错误。
java.sql.Timestamp
是另一回事。它源于java.util.Date
,只增加了纳秒的概念 - 这引入了一些你需要注意的新细微之处。在我的代码中,我远离它。
但除非你有充分的理由(比如发现你一直转换为DateTime
),否则请不要理会。 p>