在solr中搜索并存储hashmap的java代码



我的java代码使用solr搜索值。但它以xml或jason格式提供输出。我希望我的输出是一个单一的值,这样我就可以把它存储在haspmap中。有人能给我举个例子吗?提前谢谢。

您可以使用JSON或GSON将输出转换为对象,然后将对象解析为您想要的任何数据结构。

如果你是一个高级用户,那么你可以快速获得JAVABIN格式的结果。

您可以使用Google Gson将其制作为对象或数组,然后将其存储到基于文档id、guid的唯一哈希图中。。。

这是Gson 的用户指南

这是通过使用SolrJ API,我们可以实现您的需求。

import java.util.Map;
import org.apache.solr.client.solrj.SolrQuery;
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.SolrDocument;
import org.apache.solr.common.SolrDocumentList;
public class NewSolrResponse {
/**
 * @param args
 */
public static void main(String[] args) {
    HttpSolrServer solrServer = new HttpSolrServer("http://youtHost:port/Solr"); //set your URL where your index data pointing to
    SolrQuery query = new SolrQuery("   ") ; // set your query String ;
    try {
         QueryResponse queryResponse = solrServer.query(query);
         SolrDocumentList solrDocumentList = queryResponse.getResults();
         for (SolrDocument solrDocument : solrDocumentList) {
             Map<String, Object> yourParamMap =   solrDocument.getFieldValueMap(); /// Here you will get Fields and their Values
        }

    } catch (SolrServerException e) {
        e.printStackTrace();
    } 
    }
}

最新更新