使用服务器时间更新 Spring Mongo

Update with Server time For Spring Mongo

如何使用 Mongo 服务器时间

更新实体
Query query = new Query(new Criteria("id").is(user.getId()));
Update update = new Update().set("text", text)
    .set("timeStamp", ??? );

该字段只能用一种方法更新

@LastModifiedDate 不适合我?

时间戳是 LocalDateTime

您需要 .currentDate().currentTimestamp(),具体取决于您预期的存储结果。

Update update = new Update().set("text", text)
    .currentDate("timeStamp");

实际上对应于 $currentDate BSON 更新修饰符和所有相同的用法,在各自方法的选项中为 { $type: "date" }{ $type: "timestamp" }

这些是 BSON 日期值,因此是 UTC 时间。

把当地时间的想法从你的脑海中剔除,因为它没有任何业务存储在可以在世界各地访问的数据库中。