假设我有两个类如下:
public class Person {
private String personId;
private String name;
private Address address;
}
public class Order {
private String orderId;
@DbRef
private Person customer;
}
我想做的是对 Order 集合运行查询,但只返回链接的 Person 对象的特定字段,例如:
public Order findByOrderId(String orderId) {
Query query = query(where("orderId").is(orderId));
query.fields().exclude("person.address");
return operations.findOne(query,Order.class);
}
我得到了返回的数据,但如果我的排除参数跨通过@DbRef 链接的子对象,则似乎没有应用它。我可以排除 Order 对象的属性没问题。我遇到的问题是 Person 文档可能会变得非常大,我希望在获取 Order 对象时控制网络流量(即只获取我需要的数据)。
我正在使用 spring-data-mongodb 的 1.0.0.M5 版本
有谁知道是否支持这种操作?
非常感谢
乔