gpt4 book ai didi

mongodb - 如何使用 Spring Data MongoDB 将时间戳投影为 ISODate?

转载 作者:可可西里 更新时间:2023-11-01 09:55:13 25 4
gpt4 key购买 nike

在普通的 Mongo shell 中,可以在聚合期间执行以下步骤以从 Long 时间戳创建 ISODate 对象,因此能够使用各种日期辅助函数 ($year$month 等):

{
$project:{
'date': {
$add: [
new Date(0),
{
$multiply:[
'$seconds_timestamp_field',
1000
]
}
]
}
}}

是否可以使用 Spring Data 做类似的事情? plus() 方法似乎不支持将 Java Date 对象作为参数。谢谢你的帮助。

最佳答案

在 Java 中,您可以使用 Joda 库来操作数据,最好使用 Joda 库 > org.joda.time.DateTime。

使用 DateTime 类上的 toDateTimeISO() 方法将 DateTime 对象转换为 ISO。

这是一个用法示例。但一定要在 question 时使用它问已解决。

Query query = new Query();
DateTime dateTest = new DateTime(year, 1, 1, 0, 0);

query.addCriteria(Criteria.where("monthYear").gte(dateTest.toDateTimeISO()));
System.out.println(query.toString());
List<Spendings> spendingsList = dbConfig.getMongoOperations().find(query, Spendings.class, collectionName);

关于mongodb - 如何使用 Spring Data MongoDB 将时间戳投影为 ISODate?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33835792/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com