我的应用程序已经使用Joda-time进行日期操作,计划在不久的将来升级到jsr 310.现在我需要使用jpa 2和hibernate在数据库中存储非常准确的时间戳,但java.util.Date不存储毫秒值.我找到了UserType,并像这样配置了我的e...
我的应用程序已经使用Joda-time进行日期操作,计划在不久的将来升级到jsr 310.
现在我需要使用jpa 2和hibernate在数据库中存储非常准确的时间戳,但java.util.Date不存储毫秒值.
我找到了UserType,并像这样配置了我的entitybean
@Column( name = "TRANSACTION_TIME" )
@Type(type="org.jadira.usertype.dateandtime.joda.PersistentDateTime")
private DateTime transactionTime;
但它仍然没有存储毫秒.
我在2010-11-02 12:02:54.945中通过,但当我找回它时,它是2010-11-02 12:02:54.000.
我还需要做些什么才能获得毫秒存储时间和可能的时区?
UPDATE
我刚检查过,毫秒实际上是在数据库中,但是Hibernate在返回的结果中没有包含它.相同的格式化程序打印了两个结果,因此无法格式化问题
解决方法:
这可能不是您想要的,但您可以将时间存储为数字(= epoch以来的毫秒数)而不是datetime字段.
本文标题为:java – 在数据库中存储joda-time datetime
基础教程推荐
- 一文带你掌握Java中的HashSet 2023-07-14
- JAVA中split函数的常见用法实例 2023-03-11
- Spring框架实现AOP的两种方式详解 2023-05-09
- 详解Struts2中Action访问Servlet API的几种方法 2023-07-30
- Java 函数式编程梳理 2023-03-21
- Java多线程案例之单例模式懒汉+饿汉+枚举 2022-11-29
- 关于SpringBoot的异常回滚和事务的使用详解 2023-07-14
- 详解Nacos中注册中心和配置中心的实现 2023-05-08
- SpringMVC域对象共享数据示例详解 2022-11-25
- Spring IOC 常用注解与使用实例详解 2022-11-29