参考文献地址:http://www.solr.cc/blog/?p=1296

Solr版本:4.7.0

一、依赖的jar

Maven配置

[html] view plaincopy
  1. <dependency>
  2. <groupId>org.apache.solr</groupId>
  3. <artifactId>solr-solrj</artifactId>
  4. <version>4.7.0</version>
  5. <scope>test</scope>
  6. </dependency>

二、添加索引

SolrjPopulator.java

[java] view plaincopy
  1. package com.clj.test.solr.solr4;
  2. import java.io.IOException;
  3. import org.apache.solr.client.solrj.SolrServerException;
  4. import org.apache.solr.client.solrj.impl.HttpSolrServer;
  5. import org.apache.solr.common.SolrInputDocument;
  6. /**
  7. * solr 4.X
  8. * 添加索引
  9. *
  10. * @author  Administrator
  11. * @version  [版本号, 2014年3月9日]
  12. * @see  [相关类/方法]
  13. * @since  [产品/模块版本]
  14. */
  15. public class SolrjPopulator
  16. {
  17. public static void main(String[] args) throws IOException, SolrServerException {
  18. HttpSolrServer server = new HttpSolrServer("http://localhost:8080/solr");
  19. for (int i = 0; i < 1000; ++i) {
  20. SolrInputDocument doc = new SolrInputDocument();
  21. doc.addField("cat", "book");
  22. doc.addField("id", "book-" + i);
  23. doc.addField("name", "The Legend of Po part " + i);
  24. server.add(doc);
  25. if (i % 100 == 0)
  26. server.commit(); // periodically flush
  27. }
  28. server.commit();
  29. }
  30. }

三、搜索

SolrJSearcher.java

[java] view plaincopy
  1. package com.clj.test.solr.solr4;
  2. import java.net.MalformedURLException;
  3. import org.apache.solr.client.solrj.SolrServerException;
  4. import org.apache.solr.client.solrj.impl.HttpSolrServer;
  5. import org.apache.solr.client.solrj.response.QueryResponse;
  6. import org.apache.solr.common.SolrDocumentList;
  7. import org.apache.solr.common.params.ModifiableSolrParams;
  8. /**
  9. * solr 4.X
  10. * 查询数据
  11. *
  12. * @author  Administrator
  13. * @version  [版本号, 2014年3月9日]
  14. * @see  [相关类/方法]
  15. * @since  [产品/模块版本]
  16. */
  17. public class SolrJSearcher
  18. {
  19. public static void main(String[] args) throws MalformedURLException, SolrServerException {
  20. HttpSolrServer solr = new HttpSolrServer("http://localhost:8080/solr");
  21. ModifiableSolrParams params = new ModifiableSolrParams();
  22. params.set("q", "cat:book");
  23. params.set("defType", "edismax");
  24. params.set("start", "0");
  25. QueryResponse response = solr.query(params);
  26. SolrDocumentList results = response.getResults();
  27. for (int i = 0; i < results.size(); ++i) {
  28. System.out.println(results.get(i));
  29. }
  30. }
  31. }

搜索结果:

使用Solr 增加索引以及检索相关推荐

  1. solr创建索引_Solr:创建拼写检查器

    solr创建索引 在上一篇文章中,我谈到了Solr Spellchecker的工作原理,然后向您展示了其性能的一些测试结果. 现在,我们将看到另一种拼写检查方法. 与其他方法一样,此方法使用两步过程. ...

  2. 使用Lucene索引和检索POI数据

    1.简介 关于空间数据搜索,以前写过<使用Solr进行空间搜索>这篇文章,是基于Solr的GIS数据的索引和检索. Solr和ElasticSearch这两者都是基于Lucene实现的,两 ...

  3. 信息检索(IR)——索引与检索

    信息检索(IR)--索引与检索 1. 索引 在介绍这部分内容之前,我们先来回顾一下信息检索系统的基本架构: 1.1 索引的作用 首先,当用户提交一个query的时候,我们考虑一下,应该如何生成结果?如 ...

  4. MySQL索引,检索数据库

    MySQL索引,检索数据库 一.索引的概念 二.索引的作用 三.索引的副作用 四.创建索引的原则依据 五.索引的分类和创建 六.查看索引 七.删除索引 一.索引的概念 1.索引是一个排序的列表,在这个 ...

  5. 如何为网站增加索引,促进网站SEO优化?

    众所周知,索引量是百度判断网站搜索引擎优化的标准之一,一般情况下,索引量越多,网站页面被索引的几率就会越大,网站的排名提升也将有更大的机会,那么在网站优化中,该如何为网站增加索引呢? 1.良好的服务器 ...

  6. 如何通过自动增加索引,实现数据库查询耗时降低50%?

    作者 | 利开园 责编 | Carol 封图 | CSDN 下载自视觉中国 很多开发者都遇到类似这样的经历:一个产品功能开发测试都正常,发布上线后也正常,但是过一段后,如果有个活动或流量一大程序就突然 ...

  7. 增加索引提高查询效率

    有个分页,跳转页面后执行语句大致如下: SELECT * FROM [v_bidding_group_product] WHERE [id] IN ( SELECT TOP 400 [id] FROM ...

  8. 如何通过自动增加索引,实现数据库查询耗时降低50%

    作者 | 利开园 责编 | Carol 封图 | CSDN 下载自视觉中国 很多开发者都遇到类似这样的经历:一个产品功能开发测试都正常,发布上线后也正常,但是过一段后,如果有个活动或流量一大程序就突然 ...

  9. 生成Solr增量索引配置xml

    主要是解决在Solr 配置增量索引的时候,如果数据库做了分表比如分了128张,那在配置Solr的data-config.xml的时候会很浪费时间,刚开始我也用dom4生成过,但总是感觉格式有问题,特别 ...

最新文章

  1. MySQL 用户与授权管理详解
  2. Linux运行cat进程,linux下如何使用某个用户启动某个进程?
  3. 7. 基于策略的强化学习——蒙特卡洛策略梯度REINFORCE算法
  4. 二分法分页 mysql_LeetCode 04寻找两个正序数组的中位数(困难)二分法
  5. TensorFlow:实战Google深度学习框架(一)计算、数据、运行模型
  6. 前端学习(1336):从数据库查询文档
  7. mysql blob图片类型存储bug解决:索引超出了数组界限错误_索引超出了数组界限(Microsoft.SqlServer.Smo)...
  8. 基于python的web应用开发-添加关注者
  9. 异步tcp通信——APM.ConsoleDemo
  10. 静态路由的设置以及缺省路由的发布
  11. centos yum 安装
  12. WPA2 Key Reinstallation 漏洞
  13. JDK1.8中文帮助文档下载
  14. 一名高级软件测试工程师,需要具备哪些能力
  15. C语言因式分解的程序框图,C语言编写方案-因式分解
  16. 编程计算一元二次方程的根
  17. mysql修改表结构会锁表吗_MYSQL完美解决生产环境改表结构锁表问题
  18. [error] invalid array assignment
  19. 七年级计算机教案部编,七年级信息技术教案新部编本.docx
  20. 软件测试资质有哪些?具备CNAS资质和具备CMA资质的区别是什么?

热门文章

  1. Wirshark 显示过滤器
  2. 给Ubuntu 16.04更换更新源
  3. 康托尔定理是如何证明的?
  4. java环境变量搭建
  5. 通讯录的初步了解与使用
  6. PHP中如何实现 “在页面中一边执行一边输出” 的效果
  7. TQ2440+RealViewMDK调试LED跑马灯(成功!)
  8. 第十八节20181216
  9. [转载]Linux基础知识之挂载详解(mount,umount及开机自动挂载)
  10. oracle 数据库的数据事务的相关概念