1

使用spring data mongo存储库类,我们如何声明一个方法来返回排除少数字段的文档?Spring 数据参考文档显示了“包含”字段机制,但不排除。春季文档中的代码:

public interface PersonRepository extends MongoRepository<Person, String>

  @Query(value="{ 'firstname' : ?0 }", fields="{ 'firstname' : 1, 'lastname' : 1}")
  List<Person> findByThePersonsFirstname(String firstname);

}

我需要一种机制来指定要排除的字段吗?存储库方法是否支持此功能?

4

2 回答 2

3

将字段值指定为 0。例如:

public interface PersonRepository extends MongoRepository<Person, String>

  @Query(value="{ 'firstname' : ?0 }", fields="{ 'firstname' : 0}")
  List<Person> findByThePersonsFirstname(String firstname);

}

这不会获取文档的 firstname 属性,并且返回的 java 对象中的值为 null。

于 2014-03-25T19:55:01.183 回答
0

findAll为查询添加一个空的过滤条件:

public interface PersonRepository extends MongoRepository<Person, String> {
    @Query(value = "{}", fields = "{ 'firstname' : 0 }")
    List<Person> findAll(Sort sort);
}
于 2016-06-09T14:58:26.617 回答