【问题标题】:Spring data mongodb search with date带有日期的Spring数据mongodb搜索
【发布时间】:2019-08-17 23:56:02
【问题描述】:

我正在尝试按日期使用过滤器,如下所示。

// I am using the Kotlin language
Criteria.where("date").lte(Date());

但不是使用“2015-05-16T07:55:23.257Z”之类的 ISO 格式,而是 spring data mongodb 生成以下查询

{ "date" : { "$lte" : { "$date" : 1565820000000 }}}

【问题讨论】:

  • 虽然以下链接适用于 spring elasticsearch 数据,但很可能与您的问题相关并且解决方案是相同的。映射和 Jackson 序列化器:stackoverflow.com/questions/32042430/…
  • 感谢豪尔赫。问题是在我指定类类型之前生成了查询。 mongoOperations.find(query, SpecifiedClass::class.java)
  • 很高兴你弄清楚了。请将您的解决方案添加为答案并将其标记为已接受,这可能会在将来对其他人有所帮助。不要忘记添加一些相关的代码来解释它。
  • 抱歉 Jorge,但我没有解决问题。我只是指出了你建议的问题。
  • 要清楚。我尝试在 Spring 引导配置中将时间戳日期序列化设置为 false,但它没有解决任何问题。

标签: spring mongodb


【解决方案1】:

生成的查询是 BSON 格式,这意味着日期到 ISO 格式的转换是由 MongoDB 而不是 Spring 完成的

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-06
    • 2019-03-18
    • 1970-01-01
    • 1970-01-01
    • 2019-04-18
    • 1970-01-01
    • 2015-04-25
    • 1970-01-01
    相关资源
    最近更新 更多