我正在使用spring-data-mongodb 1.9.1。
我的问题与this one非常相似。
我有
@Document
public class Employee{
private int userId;
private List<Address> addresses;
}
并且
@Document
public class Address{
private int addressId;
private String street;
private String city:
}
// Getters and setters
我编写了一个查询,可以获得我需要返回的值作为Employee对象。
@Query(value="{ '$and' : [ {'addresses.city' : ?0 }]} ", fields="{ 'addresses.street' : 1}")
List<Employee> findStreetByEmployeeId(String fieldName);
我的问题是如何获得
列表与LT;的字符串&GT; findStreetByEmployeeId(String fieldName);
换句话说,我想提取我感兴趣的部分结果。 如果我必须遍历所有Employee对象并提取填充的街道值,它可能会成为一个非常昂贵的操作。
如何实现这一点的任何想法将非常感激。感谢。