我们使用Solr进行搜索,并将数据分片到多个核心.我们每周有一个核心数据,因此我们每周都会动态创建和删除核心.
如何查询solr服务器以获取其所有核心的列表?JavaDoc说我可以使用coreAdminHandler.getCoreContainer().getCoreNames(),但我不确定如何构建coreAdminHandler对象.
Mau*_*fer 22
请求http://localhost:8983/solr/admin/cores?action=STATUS(当然替换您自己的主机/端口)将返回所有核心.
Mat*_*oli 20
按照你的要求使用SolrJ,这是我的做法:
// Solr server instance
CommonsHttpSolrServer solrServer = ...;
// Request core list
CoreAdminRequest request = new CoreAdminRequest();
request.setAction(CoreAdminAction.STATUS);
CoreAdminResponse cores = request.process(solrServer);
// List of the cores
List<String> coreList = new ArrayList<String>();
for (int i = 0; i < cores.getCoreStatus().size(); i++) {
coreList.add(cores.getCoreStatus().getName(i));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14717 次 |
| 最近记录: |