Query query = new Query();
query.addCriteria(Criteria.where("trade_date").lt(trade_date));
用springboot访问mongodb的数据时,有个查询是这么写的,查小于这个日期的所有数据,运行之后报错
org.springframework.data.mapping.PropertyReferenceException: No property trade found for type xxx
有的人说是因为实体类属性不支持下划线,需要把
private String trade_date;
// 改成
@Field(name = "trade_date")
private String tradeDate;
但实际上where(“trade_date”)中的trade_date不是实体类的属性名,而就是数据库字段名,所以我觉得问题不应该出在命名上。
最后我是下面这样解决了这个问题,spring-data-mongo大于小于同时使用(网上好像没有相关的说法,但问题就这样解决了)
Query query = new Query();
query.addCriteria(Criteria.where("trade_date").lt(trade_date)).gt("00000000");