3.solr学习速成之索引添加 查询 删除

solrserver.java

public class solrServer {
    private solrServer(){};
    final static String SOLR_URL = "http://localhost:8080/solr/test";
    private static HttpSolrClient server = null;
    public static HttpSolrClient getServer(){
        if(server == null){
            server = new HttpSolrClient(SOLR_URL);
            server.setDefaultMaxConnectionsPerHost(1000);
            server.setMaxTotalConnections(10000);
            server.setConnectionTimeout(60000);
            server.setSoTimeout(60000);
            server.setFollowRedirects(false);
            server.setAllowCompression(true);
        }
        return server;
    }
}

solrTest.java

public class solrTest {
    public static void addIndex(){
        HttpSolrClient server = solrServer.getServer();
        SolrInputDocument doc = new SolrInputDocument();
        doc.addField("id", "1003");
        doc.addField("name_s", "wanglc3");
        doc.addField("score_i", "883");
        try {
            server.add(doc);
            server.commit();
        } catch (SolrServerException | IOException e) {
            e.printStackTrace();
        }
    }
    public static void delete(){
        HttpSolrClient server = solrServer.getServer();
        try {
            server.deleteById("1001");
            server.commit();
        } catch (SolrServerException | IOException e) {
            e.printStackTrace();
        }
    }
    public static void search(){
        HttpSolrClient server = solrServer.getServer();
        SolrQuery query = new SolrQuery();
        query.setQuery("*:*");
        query.setStart(0);
        query.setRows(5);
        QueryResponse queryResponse;
        try {
            queryResponse = server.query(query);
            SolrDocumentList list = queryResponse.getResults();
            System.out.println("num = "+list.getNumFound());
            for(int i=0;i<list.size();i++){
                System.out.println(list.get(i).getFieldValue("name_s"));
            }

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    public static void main(String[] args) {
        //addIndex();
        //delete();
        search();
    }
}
时间: 2024-11-10 16:08:09

3.solr学习速成之索引添加 查询 删除的相关文章

solr学习文档之添加分词词库

在上一篇文章中我们学习了solr的快速入门和针对mysql数据库建立索引,今天我们介绍如何为solr添加中文分词 1.  在百度搜索ik-analyzer,找到后下载,我下载的是[IKAnalyzer 2012FF_hf1.zip],解压后会看到如下目录 2.  把IKAnalyzer2012FF_u1.jar拷贝到webapps下solr的lib文件夹下,把IKAnalyzer.cfg.xml和stopword.dic拷贝到solr的conf目录中 3.  修改schema.xml文件,增加如

4.solr学习速成之bean

以bean的形式提交索引,以bean的形式查询出来 package com.liucheng.solr; import java.io.Serializable; import org.apache.solr.client.solrj.beans.Field; public class student implements Serializable{ private static final long serialVersionUID = 1L; @Field private String id

12.solr学习速成之dataimport

solr除了利用solrj建立索引外,还可以由列式数据库hbase触发器添加索引,自动全量或者增量索引关系数据库数据等. dataimport可以配置从任何关系数据库导入索引 1.将jar包拷贝到tomcat/webapps/solr/web-inf/lib下面 mysql-connector-java-5.1.6.jarsolr-dataimporthandler-5.3.1.jarsolr-dataimporthandler-extras-5.3.1.jarsolr-dataimportsc

13.solr学习速成之IK分词器

IKAnalyzer简介 IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包. IKAnalyzer特性 a. 算法采用"正向迭代最细粒度切分算法",支持细粒度和最大词长两种分词方式,速度最大支持80W字/秒(1600KB/秒). b. 支持多子处理器分析模式:中文.数字.字母,并兼容日文.韩文. c. 较小的内存占用,优化词库占有空间,用户可自定义扩展词库. d. 扩展lucene的扩展实现,采用歧义分析算法优化查询关键字的搜索排列组合,提高lucene检

2.solr学习速成之安装

1.下载解压solr-5.3.1.tgz [[email protected] opt]# tar -zxf solr-5.3.1.tgz -C /opt/module/ 2.将solr-5.3.1/server/solr-webapp下的webapp文件夹拷贝到tomcat下的webapp下,并改名solr [[email protected] solr-webapp]# cp -r webapp/* /opt/module/apache-tomcat-8.5.15/webapps/solr/

5.solr学习速成之语法

常用查询参数 q - 查询字符串,必须的. fl - 指定返回那些字段内容,用逗号或空格分隔多个.  start - 返回第一条记录在完整找到结果中的偏移位置,0开始. rows - 指定返回结果最多有多少条记录,配合start来实现分页. sort - 排序,示例:(inStock desc, price asc)表示先 "inStock"降序, 再 "price"升序,默认是相关性降序. wt - (writer type)指定输出格式,可以有 xml, jso

Solr使用访问地址控制索引的,删除、创建

启动Solr,删除全部索引数据: http://localhost:8080/solr/update/?stream.body=<delete><query>*:*</query></delete>&stream.contentType=text/xml;charset=utf-8&commit=true 停掉Solr,检查下是不是清空了: 开始创建新的索引,浏览器执行方式: 终止跑索引:http://localhost:8080/solr/

solr 学习片段

全文检索技术——Solr 2 站内搜索技术选型 1.使用Lucene来实现:需要大量的编码才能实现.集群方案需要自己解决.查询速度的优化都需要自己解决.不推荐使用. 2.使用搜素引擎提供的接口实现站内搜索.索引库在搜索引擎上,维护不方便.开发简单. 3.使用Solr来实现站内搜索.可以独立运行,提供全套的解决方案.Solr集群.索引库的优化.推荐使用. 3 什么是solr 3.1 什么是solr Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器

solr学习文档之高亮

在<solr学习文档之添加分词词库>一文中,我们学习了如何对一个词组进行分词提取,这一章我们将会使用到分词词库,并介绍如何进行高亮展现 在此之前,我们先了解一下高亮的几个参数 hl:是否开启高亮组件,true为开启,false为不开启 hl.fl:需要开启的高亮字段,多个可用逗号隔开 hl.simple.pre:高亮字段前缀 hl.simple.post:高亮字段后缀 (其他的暂不介绍,想知道的可自行百度) 想要进行高亮站下,需要在schema.xml中将你的字段名(如topicContent