solrj的简单实用

2018-05-20  本文已影响0人  George_Antonio

部署solr服务

上一篇中讲述了如何部署一个solr项目, 部署成功进行访问访问就进入到了solr的浏览器界面。

利用浏览器界面也可以进行索引的添加和关键词的查询, solrj也可以添加索引进行搜索。 solrj和浏览器界面的区别就类似于jdbc和mysql客户端的区别。

涉及到的类

所需jar包:

上代码

创建索引

    @Test
    public void testCreateIndex() throws IOException, SolrServerException {

        // 创建httpsolrserver对象, 和solr服务器进行链接
        HttpSolrServer solrServer = new HttpSolrServer("http://localhost:8080/solr/");
        // 创建solrinputdocument对象, 添加域
        SolrInputDocument document = new SolrInputDocument();
        document.addField("id", "007");
        document.addField("content", "helloworld");
        // 通过solrserver将solrinputdocument添加到索引域
        solrServer.add(document);
        // 提交
        solrServer.commit();
    }

删除索引

@Test
    public void testDeleteIndex() throws Exception{
        // 创建solrserver对象, 用于链接solr服务器
        HttpSolrServer server = new HttpSolrServer("http://localhost:8080/solr/");
        // 根据条件删除
        server.deleteById("007");   // 根据id删除
        server.deleteByQuery("*:*");    // 删除所有
        // 提交
        server.commit();
    }

简单搜索

@Test
    public void testQuery() throws  Exception{
        // 创建solrserver对象,用于和solr服务器进行连接
        HttpSolrServer server = new HttpSolrServer("http://localhost:8080/solr/");
        // 创建查询对象
        SolrQuery query = new SolrQuery();
        query.setQuery("*:*");
        // 执行查询
        QueryResponse response = server.query(query);
        // 得到结果
        SolrDocumentList results = response.getResults();
        // 处理结果
        long totalNum = results.getNumFound();
        System.out.println("共发现"+ totalNum +"条结果");
        for (SolrDocument document: results){
            System.out.println(document.getFieldValue("id"));
            System.out.println(document.getFieldValue("content"));
        }
    }
上一篇 下一篇

猜你喜欢

热点阅读