solr搜索引擎的java代码的新增和查询

package solr;

import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.SolrQuery.ORDER;
import org.apache.solr.client.solrj.impl.HttpSolrClient;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.client.solrj.response.UpdateResponse;
import org.apache.solr.common.SolrDocument;
import org.apache.solr.common.SolrDocumentList;
import org.apache.solr.common.SolrInputDocument;
import org.junit.Test;

public class SolrTest {
    @Test
    public void testSelect()throws Exception{
        SolrClient solrClient=new HttpSolrClient("http://192.168.24.104:8080/solr/hxcore1");

            // 创建solrquery
            SolrQuery query = new SolrQuery();
            // 设置查询条件、过滤条件、分页条件、排序条件、高亮
            // 设置默认搜索域
            query.set("df", "item_keywords");
            query.setQuery("游轮");

            // 设定分页
            query.setStart(0);
            query.setRows(100);

            // 设定排序条件
            query.setSort("id", ORDER.desc);

            // 得到查询结果对象
            QueryResponse resp = solrClient.query(query);

            SolrDocumentList solrArr = resp.getResults();

            // 循环集合
            for (SolrDocument doc : solrArr) {

                String id = doc.getFieldValue("id").toString();

                String title = doc.getFieldValue("item_title").toString();

                String sellPoint = doc.getFieldValue("item_sellpoint").toString();
                Long price = (Long) doc.getFieldValue("item_price");

                System.out.println(id);
                System.out.println(title);
                System.out.println(sellPoint);
                System.out.println(price);
                System.out.println("-------------------------------------------");
            }

            solrClient.close();
        }

    @Test
    public void testInsert() throws Exception {

        SolrClient solrClient = new HttpSolrClient(
                "http://192.168.24.104:8080/solr/hxcore1");

        // 新建一个对象
        SolrInputDocument doc = new SolrInputDocument();
        doc.addField("id", "11111111");
        doc.addField("item_title", "豪华游轮");
        doc.addField("item_sellpoint", "太空进口");
        doc.addField("item_price", 500000);
        doc.addField("item_num", 9999);
        doc.addField("item_categoryName", "游轮");
        doc.addField("item_categoryId", 56);

        UpdateResponse resp = solrClient.add(doc);

        solrClient.commit(); // 担交
        solrClient.close();

        System.out.println("状态码:" + resp.getStatus()); // 0代表成功

    }
}

猜你喜欢

转载自blog.csdn.net/qq_34135615/article/details/82901253