我如何在春季数据mongodb中使用$ where?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何在春季数据mongodb中使用$ where?相关的知识,希望对你有一定的参考价值。

我无法使用$where中的SpringDataMongoDb

SpringBoot中有什么方法可以实现?

db.getCollection('my_collection').find( $where : function()
    for (var key in this.action_status)
        return this.action_status[key] == false;
    
)

谢谢。

答案

有两种实现方式,一种是在春季启动应用程序中使用MongoTemplate和条件查询

Query query = new Query();
query.addCriteria(Criteria.where("action_status").eq(false));
List<User> users = mongoTemplate.find(query,MyCollectionClassName.class);

另一种方法是使用mongo仓库

@Query("SELECT mc FROM my_collection mc WHERE mc.status = false")
MyCollectionClassName findMyCollectionClassNameByStatus(Integer status);

参考:

https://www.baeldung.com/queries-in-spring-data-mongodb
https://www.baeldung.com/spring-data-jpa-query

以上是关于我如何在春季数据mongodb中使用$ where?的主要内容,如果未能解决你的问题,请参考以下文章

春季数据MongoDB。生成id的错误

春季启动MongoDB配置

在春季更改mongodb标准内容

如何在mongodb中使用where条件

春季是不是有 mongoDB 的 @MappedSuperclass 等效注释?

根据id获取数据