Spring 在没有时间的日期字段上启动查询

Spring Boot Query on Date field without time

我有一个日期字段类型为 java.util.Date 的实体,而 oracle 数据库中的该字段具有 timestamp 类型。

问题是当我使用存储库按给定规格查找时,它 returns 在给定日期没有任何内容。

只有当我想要确切的等于日期时才会发生。它适用于 greaterThenlessThen,这是因为保存记录的时间不同。

我怎么能忽略记录的时间并只获取给定日期的记录?

万分感谢

我认为您需要查看 @Temporal @JsonFormat 注释。 Link

示例用法;

@Temporal(TemporalType.TIMESTAMP)
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MMdd'T'HH:mm:ss")
protected Date lastUpdate;

因为数据是按时间保存的,最好的方法是使用 between 条件从 00:0023:59 那一天。特别感谢 link :

Spring Data Querying DateTime with only Date

但我通过从 table 创建一个视图并从 oracle 中的日期中删除时间解决了这个问题。