【发布时间】:2017-07-26 22:32:02
【问题描述】:
我正在尝试使用自己的查询来查询 mongo 存储库:
@Repository
public interface LogEntryRepository extends MongoRepository<LogEntry,String> {
@Query("{'created_at' : {{ $gte: ISODate(?0)},{$lt: ISODate(?1)}}, " +
"$or: [{'site': {$regex: ?2}}, {'login': {$regex: ?2}}, {'ip': {$regex: ?2}} ]" +
"}")
public Page<LogEntry> findByDateTimeBetweenAndCriteria(String isoStartDate, String isoEndDate, String searchTerm, Pageable page);
}
我想要实现的是使用关键字搜索过时的日志。以上抱怨解析错误:
Caused by: com.mongodb.util.JSONParseException:
{'created_at' : { $gte: ISODate("_param_0"), $lt: ISODate("_param_1")}, $or: [{'site': {$regex: "_param_2"}}, {'login': {$regex: "_param_2"}}, {'ip': {$regex: "_param_2"}} ]}
^
如果我用简单的?0 替换ISODate(?0),它会产生Page 1 of 0 containing UNKNOWN instances
字符串isoStartDate & isoEndDate 是从java.util.Date 生成的,看起来像这样2017-06-27T00:00:00.000Z
我如何在里面找到我的约会对象?
【问题讨论】:
标签: mongodb spring-data spring-data-mongodb