系统需求想查找设备工作在某个范围内的设备,设备信息存在MongoDB中,刚开始采用如下写法,系统报错:
系统错误提示:
Due to limitations of the com.mongodb.BasicDocument, you can’t add a second ‘work_hour’ expression specified as ‘work_hour : Document{{KaTeX parse error: Expected 'EOF', got '}' at position 11: lte=2000.0}̲}'. Criteria al…gte=1000.0}}’.
后面采用下面的写法,能正常查询出结果:
代码:
criteria.and("work_hour").gte(Double.parseDouble(equipmentInfoMap.get("min_work_hour").toString())).lte(Double.parseDouble(equipmentInfoMap.get("max_work_hour").toString()));
另外,注意传入查询条件参数的数据类型要和数据库字段的数据类型一致,否则得不到正确结果。