Java 如何在ApacheIgnite2.1中列出一个缓存中的所有缓存名和所有列名?

Java 如何在ApacheIgnite2.1中列出一个缓存中的所有缓存名和所有列名?,java,sql,ignite,Java,Sql,Ignite,是否有java代码或SQL示例列出ApacheIgnite中存在的所有缓存 还有一个java代码或SQL示例可以列出Apache Ignite中一个缓存中的列吗?org.Apache.Ignite.Ignite#cacheNames列出了所有可用的缓存 您可以通过CacheConfiguration#setQueryEntities或CacheConfiguration#setIndexedTypes从缓存的QueryEntries集合中获取有关列的信息 只需调用集合queryEntities=

是否有java代码或SQL示例列出ApacheIgnite中存在的所有缓存


还有一个java代码或SQL示例可以列出Apache Ignite中一个缓存中的列吗?

org.Apache.Ignite.Ignite#cacheNames
列出了所有可用的缓存

您可以通过
CacheConfiguration#setQueryEntities
CacheConfiguration#setIndexedTypes
从缓存的
QueryEntries
集合中获取有关列的信息 只需调用集合queryEntities=cache.getConfiguration(CacheConfiguration.class).getQueryEntities()然后在感兴趣的
QueryEntity
上调用
QueryEntity#getFields

您还可以在使用
SqlFieldsQuery
时获取有关提取的查询字段的信息

FieldsQueryCursor<List<?>> cursor = cache.query(new SqlFieldsQuery(query));
for (int i = 0; i < cursor.getColumnsCount(); ++i) {
    String fieldName = cursor.getFieldName(i);
    // ...
}
FieldsQueryCursor