2011-09-20 65 views
0

我发现scalaquery使用java.sql.date作为日期对象。但是,当我创建java.sql.date时,它会减少时间。scalaquery如何创建日期时间

有没有什么办法可以用来创建mysql datetime字段在scalaquery中?

+0

没有用于测试的mysql实例,但是您是否尝试过使用String和MySQL datetime之间的隐式转换? – Noel

回答

1

ScalaQuery中没有java.util.Date支持。但是,可以使用自己的类型映射器来增强ScalaQuery。对于java.util.Date这样的包装看起来是这样的

implicit val JavaUtilDateTypeMapper = MappedTypeMapper.base[java.util.Date, Long] (_.getTime, new java.util.Date(_)) 

转换java.util.Date成简单的长。这取决于你的数据库什么是最好的目标,在我的情况下,一个长期完美的作品。

+0

+1好贴士,@Steffan。通过长日期直到你需要日期(即在查询时间),而不是创建日期(例如从字符串uri日期)并传递到查询方法。 – virtualeyes

1

而不是使用java.sql.Date,在声明列时尝试使用java.sql.Timestamp

它看起来像为具有日期和时间元素的列生成更好的映射。

相关问题