solrJ使用基础

来源:互联网 发布:python phantomjs 编辑:程序博客网 时间:2024/06/06 04:55

  • 二solrJ使用基础
    • 一添加索引
    • 二查询

二、solrJ使用基础

参考:https://cwiki.apache.org/confluence/display/solr/Using+SolrJ

(一)添加索引

public static void main(String[] args) throws SolrServerException, IOException {    SolrInputDocument doc = new SolrInputDocument();// 实例化索引Doc    doc.addField("id", "index_demo");// 添加主键    doc.addField("qualifier_col", "valuedemo");// 添加主键    CloudSolrClient client = new CloudSolrClient("192.168.1.1:2181/solr");// cloud模式    client.setDefaultCollection("collection1");    client.add(doc);  //client.add("collection1", doc);    client.commit();    client.close();}

(二)查询

public static void main(String[] args) throws SolrServerException, IOException {        try (CloudSolrClient client = new CloudSolrClient("192.168.1.1:2181/solr");) {// cloud模式            //根据id查doc            SolrDocument doc = client.getById("collection1", "index_demo");            for (String field : doc.getFieldNames()) {                System.out.println(field + " : " + doc.getFieldValues(field));            }            //根据field查doc            SolrQuery query = new SolrQuery();            //query.setQuery(mQueryString);            query.setRequestHandler("/query");            query.set("q", "qualifier_col:valuedemo");//返回index_demo//          query.set("q", "qualifier_col:valuedemo OR id:index_demo2");//返回index_demo//          query.set("q", "qualifier_col:valuedemo AND id:index_demo2");//返回空//          query.set("q", "qualifier_col:valuede*");//返回index_demo            QueryResponse response = client.query("collection1", query);            for(SolrDocument doc2 :response.getResults()){                System.out.println(doc2.getFieldValue("id"));            }        }    }
0 0