java - findBy 在 Instant 中使用 Postgres 时间戳不工作微秒

标签 java spring postgresql hibernate spring-data-jpa

我正在使用 jpa 的 findBy 方法(例如 findByDateOfOrder)从 PostgreSQL 数据库中基于 java.time.Instant 找到一个实体。 但是当 Instant 具有微秒级精度时,findBy 无法找到所需的实体。

例如:不适用于 2018-02-16T17:19:41.999999Z 但适用于 2018-02-16T17:19:41.999Z

最佳答案

问题出在 Java 版本上。我们使用的是 Java 8,因此 JPA 无法理解微秒精度。随着 Java 9 的出现,Instant 的默认精度设置为微秒。

关于java - findBy 在 Instant 中使用 Postgres 时间戳不工作微秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48831947/

相关文章:

java - Spring 3.0 @Value 从属性文件读取部署时出现异常

postgresql - 在 postgresql 的子查询中使用执行

javascript - 如何在nodeJs + sequelize+graphql中的s3存储桶上上传之前获取文件大小?

java - 如何将方法从不同的类传递到 Java 中的另一个类?

c# - 从头开始的模型- View - Controller 架构最佳实践

java - Spring Boot Mongo - E11000 重复 key

node.js - Redis与Postgresql同步(在线用户状态)

java - 从子类获取数据: Java

java - 在 Maven 中禁用站点生成和部署

Spring security 对身份验证和主体拥有权限 - 为什么以及使用哪一个?