gpt4 book ai didi

solrj - 如何使用 SolrJ 从 Core 检索所有存储的字段

转载 作者:行者123 更新时间:2023-12-02 04:27:08 29 4
gpt4 key购买 nike

是否可以使用 SolrJ 客户端从某些 Core 检索所有存储的字段?

例如<field name="author" type="string" stored="true" indexed="true"/>

谢谢,彼得

最佳答案

您可以使用特定核心的 SolrJ 客户端获取有关字段的信息。

使用以下代码片段进行检索。

    import java.util.ArrayList;

import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.SolrServer;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.impl.HttpSolrServer;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.common.params.CommonParams;
import org.apache.solr.common.util.NamedList;
import org.apache.solr.common.util.SimpleOrderedMap;



SolrServer solrCore = new HttpSolrServer("http://{host:port}/solr/core-name");
SolrQuery query = new SolrQuery();
query.add(CommonParams.QT, "/schema/fields");
QueryResponse response = solrCore.query(query);
NamedList responseHeader = response.getResponseHeader();
ArrayList<SimpleOrderedMap> fields = (ArrayList<SimpleOrderedMap>) response.getResponse().get("fields");
for (SimpleOrderedMap field : fields) {
Object fieldName = field.get("name");
Object fieldType = field.get("type");
Object isIndexed = field.get("indexed");
Object isStored = field.get("stored");
// you can use other attributes here.

System.out.println(field.toString());
}

请注意,我使用的是 4.10.2 版本的 SolrJ。

谢谢

希瓦·库马尔 SS

关于solrj - 如何使用 SolrJ 从 Core 检索所有存储的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26139507/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com