java - spring如何在mongoDB中查询过滤
问题描述
我想按字符串数组的标签搜索我的食谱,并希望按标签过滤
我知道会
db.Recipe.find({$and:[{tags:"Desert"},{tags:"low-fat"}]}).pretty()
但我不知道如何在 java spring 中编写查询以灵活灵活意味着过滤选项的数量可以变化
解决方案
自动装配 MongoTemplate
@Autowired
MongoTemplate mongoTemplate;
然后在里面使用你的过滤器andOperator()
public void somemethod(){
Query query=Query.query( new Criteria().andOperator(
Criteria.where("tags").is("Desert"),
Criteria.where("anotherFilter").is("answer"),
// write more filter
)
);
List<Recipe> =mongoTemplate.find(query,Recipe.class);
// do your stuffs
}
推荐阅读
- python - Django-Channels 2 没有在“连接”中保留会话数据集
- java - Android 从 webhost 获取 json 添加标记 ERROR E/zygote64
- javascript - 无法通过 JQUERY 在动态添加的表行中添加 datetimepicker
- javascript - 使用 vanilla JS 的事件委托
- c++ - C ++ ofstream不会打开文件
- python - 在 Keras 中加载保存的模型(双向 LSTM)
- java - 为什么超类字段的泛型类型不会被擦除到子类型中的具体绑定?
- javascript - 提交后保持表单值
- php - PHP可以关闭与客户端的连接吗?
- javascript - 在javascript中结合对象的两个属性