我正在尝试对MySql数据库上的日期类型字段进行查询。
我使用谓词来生成更复杂的查询。
Path<Date> path = root.get(attribute);
predicate = criteriaBuilder.equal(path, operator.getValue());其中,属性是
public static volatile SingularAttribute<Expiry, Date> dateInsert;operator.getValue()是
binding parameter [1] as [DATE] - [Tue Feb 02 00:00:00 CET 2021]查询返回空结果集。我使用存储库进行查询。
expiryRepository.findAll(specification,getPageable(currentIndex))我读了很多关于这个问题的话题,但没有任何建议的解决方案适用于我的情况。
2021年有没有可能的解决方案?
发布于 2021-02-07 03:17:56
在我的具体案例中,这个问题是由于应用程序和连接之间的时区设置不同造成的。连接是使用UTC时区建立的,但应用程序使用CET时区工作。当我在应用程序中将日期设置为2021年2月2日00:00时,连接将其更改为2021年2月1日晚上11:00。
我把这个去掉了
&serverTimezone=UTC从连接字符串,一切工作正常。
https://stackoverflow.com/questions/66070729
复制相似问题