自定义方法Spring Mongo存储库不返回任何数据

时间:2019-02-01 01:04:55

标签: java spring mongodb

我最近一直在使用方法名创建查询。我有扩展MongoRepository的接口:

public interface CompanyRepository extends MongoRepository<Company, String> {
    //this works.
    Company findByEmployeename(String name);
    //this doesn't
    List<Company> findByEmployeename(List<String> name);
}

我希望可以从员工列表中找回公司列表,但是当我调用该方法时,我会得到一个空列表。我不想在循环或某种形式中使用findByEmployeename(String name)。使用自定义存储库方法可以做到这一点吗?

1 个答案:

答案 0 :(得分:1)

是的。只需将In附加到List<Company> findByEmployeenameIn(List<String> name);,在Mongo查询中转换为$in运算符。您应该只阅读https://docs.spring.io/spring-data/mongodb/docs/current/reference/html/#repositories.query-methods

如果您想在控制台日志中看到由您的方法创建的相应查询。在您的properties / yml文件中,添加logging.level.org.springframework.data.mongodb.core.MongoTemplate=DEBUG