我使用 GridGain 作为我的数据对象 (pojos) 的本地内存存储,我需要查询这些对象并选择具有特定值的正确对象。让我们考虑以下情况:
class Person {
public Long id;
public String name;
public Organization organization;
}
class Organization{
public Long id;
public String name;
}
您能否建议如何进行查询以检索例如某个组织的所有人员?我试过以下:
final GridCacheProjection<GridCacheAffinityKey<Long>, Person> appCache = cache.projection(GridCacheAffinityKey.class, Person.class);
final GridCacheQuery<Map.Entry<GridCacheAffinityKey<Long>, Person>> query = appCache.queries().createSqlQuery(Person.class, "from Person, Organization " + "where Person.organization.id = " + "Organization.id = ?");
但没有运气。我发现了很多使用 Person.id = Organization.id = 的例子 但是我将组织作为 Person 类中的对象,那么如何以这种方式编写查询或检索数据?
提前感谢您的任何提示。