2015-04-15 53 views
0

物化投影查询鉴于使用滤镜

@Entity 
public class Goat{ 
    Long pen; 
    Long car; 
    Boolean active; 
    … 
} 

我需要创建一个返回的Long的List投影查询类。我应该如何编辑以下内容才能使用?

List<Long> cars = ofy().load().type(Goat.class).filter("pen", pen).filter("active", true).project("car").list(); 

回答

0

您需要为计划查询/过滤的所有字段建立索引。 例如。

@Index 
Long pen; 
@Index 
Long car; 
+0

它不编译。更改为'type(Long.class)'是否可以接受?它如何知道我正在查询哪个课程?另一方面,如果我没有指定Long,它不符合预期的类型。 –

+0

什么不能编译? – jirungaray

+0

因为我期望'列表'如果我把类型设置为类型(Goat.class)'它不会编译。所以它似乎期望被查询的类型和结果集具有相同的类型。基本上阅读我的代码行,看看我的不匹配。或者我猜投影仍然会返回'Goat',但只有'car'被定义。 –