java - hibernate : Generic JDBC exception - Bad format for Time '838:59:59'

标签 java mysql hibernate

我有如下的 hibernate 映射:

<property formula="(Timediff(ifnull(sttime,now()),sstime))" insert="false" name="duration" update="false" />
where sstime is of type Timestamp

这里这个公式从我的数据中以这种格式“838:59:59”返回一些值。

当我尝试在具有“java.sql.Time”类型的“Duration”字段中加载此值时出现异常,它给了我这个异常。

"Generic JDBC exception - Bad format for Time '838:59:59'"

最佳答案

这确实不是一个有效的时间。您不应使用 java.sql.Time 来表示持续时间,尤其是当此持续时间可能超过 24 小时时,因为 Time 表示日期的时间部分。请改用自定义类型,或仅使用您自己解析的字符串。

关于java - hibernate : Generic JDBC exception - Bad format for Time '838:59:59' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15359595/

相关文章:

java - 如何在没有检查的情况下生成回文列表

java - 我怎样才能让maven在我的构建成功或失败时通过一些蜂鸣声或其他东西来通知?

java - 收缩层次结构Java实现

php - 无效参数和非法偏移量

python - 生成 SQL "IN"子句 : how to safely handle input + empty value lists?

java - 无法在 hibernate 中找到数据源

java - 组织.hibernate.QueryException : could not resolve property

java - Android for循环在主线程中不起作用

sql - 使用 JPA/Hibernate 进行国际化的最优雅的解决方案?

mysql - MySQL SQL Pass-Thru 中的文本替换