【问题标题】:Hibernate repo query to access mongodb embedded documentHibernate repo 查询访问 mongodb 嵌入文档
【发布时间】:2018-07-30 02:42:54
【问题描述】:

我有一个这样的 mongo 文档:

{  
   "user":{  
      "name":"String",
      "Department":{  
         "departName":"String",
         "departId":0
      }
   }
}

所以我有一个嵌套的 json 部门,我的 spring-hibernate 实体是这样的:

@Document(collection:"user") 
class User(){
    String name
    Department department    
}

和班级部:

class Department(){
    String departName
    Integer departId  
}

我想通过departName查询,这很容易用mongo查询语言完成,如下所示:

db.user.find("user.department.departName":"HHRR")

所以,我需要做的是在 spring 数据代码中进行相同的查询。我有一个 mongoRepository,这是我迄今为止尝试过的:

public interface CustomerRepository extends MongoRepository<User, String> {

public Customer findByDepartment(Department department);
}

但这不起作用,因为它同时通过部门名称和部门 ID 进行查询,而我只有部门名称。

我想做类似的事情:

public Customer findByDepartment.departName(String DepartName);

我可以使用 spring-hibernate 代码实现这一点吗?

如果这不可能,我可以使用 mongo 查询吗?

【问题讨论】:

    标签: java spring mongodb hibernate spring-boot


    【解决方案1】:

    这与 Hibernate 无关。
    是的,您可以通过

    来实现
    public Customer findByDepartment_DepartName(String DepartName);
    

    Spring 数据会根据方法名制定查询

    【讨论】:

    • 它就像一个魅力,这正是我想要做的......如此糟糕的文档......非常感谢!
    猜你喜欢
    • 1970-01-01
    • 2011-04-26
    • 2015-02-06
    • 2018-03-20
    • 2021-08-07
    • 2021-02-25
    • 2016-08-16
    相关资源
    最近更新 更多