如何使用java从google app engine数据存储中加载值以执行或操作

如何使用java从google app engine数据存储中加载值以执行或操作,java,google-app-engine,google-cloud-datastore,Java,Google App Engine,Google Cloud Datastore,我必须使用2个条件或条件来加载实体值 例如,从数据库中选择*,其中(电子邮件=xyz@gmail.com或UUID=1234) 已尝试使用筛选器: Filter emailFilter = new FilterPredicate("email", FilterOperator.EQUAL, email); Filter firstFilter = new FilterPredicate("firstname", FilterOperato

我必须使用2个条件或条件来加载实体值 例如,
从数据库中选择*,其中(电子邮件=xyz@gmail.com或UUID=1234)

已尝试使用筛选器:

Filter emailFilter =
              new FilterPredicate("email", FilterOperator.EQUAL, email);

Filter firstFilter =
              new FilterPredicate("firstname", FilterOperator.EQUAL, firstName);

Filter filter =
              CompositeFilterOperator.or(emailFilter, firstFilter);
但是我不明白在加载时如何使用这个过滤器


如何使用数据存储中的筛选器执行此操作?

如果我理解正确,您只需将筛选器应用于查询并检索结果:

// Your filter declarations
Filter emailFilter =
    new FilterPredicate("email", FilterOperator.EQUAL, email);
Filter firstFilter =
    new FilterPredicate("firstname", FilterOperator.EQUAL, firstName);
Filter filter =
    CompositeFilterOperator.or(emailFilter, firstFilter);

// Use class Query to assemble a query
Query q = new Query("Person").setFilter(filter)

// Use PreparedQuery interface to retrieve results
PreparedQuery pq = datastore.prepare(q);

for (Entity result : pq.asIterable()) {
    // result.getProperty("lastname")
}