2014-11-14 31 views
0

我有列类型是在MySQL冬眠TemporalType,日期时间的列映射

datetime和我使用冬眠 @Temporal(TemporalType.TIMESTAMP) 私人的java.sql.Timestamp lastExpressTime;

@Temporal(TemporalType.TIMESTAMP) 
private java.util.Date lastExpressTime; 

@Temporal(TemporalType.DATE) 
private java.sql.Date lastExpressTime; 

这些之间有一些区别吗?

datetime应该映射什么样的TemporalType?

我找到一个参考Table 5.2 MySQL Types to Java Types for ResultSet.getObject() datetime应该映射时间戳吗?

感谢您的任何帮助和建议提前

回答

1

随着TemporalType.TIMESTAMP,当你坚持下去/读取lastExpressTime /从数据库中,日期和时间将持续/读取。

随着TemporalType.DATE,当你持续/读取lastExpressTime到/从数据库,只有日期将被持久/阅读和时间部分的日期将被设置为全零。

不确定这种行为对于所有数据库是否相同,最好是在您自己的测试中检查。