字段定义无法将 '0000-00-00 00:00:00' 到TIMESTAMP
/** Date. */
@Column(columnDefinition = "datetime")
private Date date;
二传手
public void setDate(final Date date) {
DateFormat dfmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
this.date = dfmt.parse(dfmt.format(date));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
任何人都不会有想法如何转化 “零日” 到适当的价值? 因为我有错误:
Cannot convert value '0000-00-00 00:00:00' from column 13 to TIMESTAMP
即使我这样设置 “默认” 字段和setter:
/** Date. */
@Column
private Date date;
public void setDate(final Date date) {
this.date = date;
}
我仍然有同样的问题....
在我看来,0000-00-00 00:00:00不符合任何实际时刻,因此它从根本上不能转换为时间戳值。你想要的行为是什么?你是否希望它将无效的ISO日期转换为默认值? – 2009-09-01 16:53:18
我从表中获取数据(表中不止有一列)后的下一步行动是将此代码写入XML,但(!)我不会将日期值写入XML,因此我只想从表中获取数据,之后,我将永远不会调用getDate()方法。 – Oleksandr 2009-09-01 16:58:56
“您是否希望它将无效的ISO日期转换为默认值?” - 是的,如果有可能... – Oleksandr 2009-09-01 17:00:29