最近做了个solr搜索的demo, 用的是solr7.7,之前网上好多文章搭建solr都是5.5+tomcat。。 自己摆弄了下,发现solr7.7和5.5 的部分文件夹有些改动,没有深究原理也就没有弄成功。

百度最新的7.7,有2篇博客照着做了下,弄好了。。

博客链接:https://www.cnblogs.com/bangzexiong/p/10374783.html

这里粘贴一下java代码吧: 下面是service实现层,用controller调用接口就可以了,这里需要注意的一点是 红色部分的字体 ,这里设置多大,条下面的的resultSize就有多大,numFound 是一共查出的数据的总条数。。比如 numFound是2000  rows设置为10,那么resultSize()的大小就为10 在集合中就只有 10条数据。

demo 链接:

链接:https://pan.baidu.com/s/1P4OjlUnjYaps5IH6M4zIMQ
提取码:xre7

@Service
public class SolrServiceImpl implements SolrService { private static final String solrUrl = "http://localhost:8983/solr/happy"; @Override
public PageBean listEcnomic(String name) {
//PageHelper.startPage(1,20);
ArrayList<EcnomicVo> voList = Lists.newArrayList(); try {
HttpSolrClient solrClient = new HttpSolrClient.Builder(solrUrl).build();
// 创建搜索对象
SolrQuery solrQuery = new SolrQuery();
// 设置搜索条件
solrQuery.set("defType","edismax");
solrQuery.set("mm","100%");
solrQuery.set("q","name:*"+ name +"*");
// 分页参数
solrQuery.setStart(0);
// 设置每页显示多少条 这里的row 决定了result.size row多大 下面的result.size 多大
solrQuery.setRows(10); //发起搜索请求
QueryResponse response = solrClient.query(solrQuery);
// 查询结果
SolrDocumentList results = response.getResults();
// 查询结果总数
long numFound = results.getNumFound();
System.out.println("一共查询出" + numFound + "条数据");
System.out.println(results.size());
for (SolrDocument document : results){
EcnomicVo ecnomicVo = new EcnomicVo();
ecnomicVo.setName(document.getFieldValue("name").toString());
ecnomicVo.setPepole(document.getFieldValue("pepole").toString());
if (document.getFieldValue("createTime") !=null ){
ecnomicVo.setCreateTime(document.getFieldValue("createTime").toString());
}
voList.add(ecnomicVo);
}
System.out.println(voList.size());
PageBean<EcnomicVo> pageBean = new PageBean<>();
pageBean.setTotal(voList.size());
pageBean.setTotalPages(voList.size()/2);
pageBean.setPageNumber(1);
pageBean.setPageSize(2);
pageBean.setPageDatas(voList);
return pageBean;
} catch (SolrServerException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}

solr 7.7 搭建和搜索的更多相关文章

  1. 利用SOLR搭建企业搜索平台 之——MultiCore

    Solr Multicore 是 solr 1.3 的新特性.其目是一个solr实例,可以有多个搜索应用. 下面着手来将solr给出的一个example跑出来.这篇文章是基于<利用SOLR搭建企 ...

  2. SOLR搭建企业搜索平台

    一. SOLR搭建企业搜索平台  运行环境:  运行容器:Tomcat6.0.20  Solr版本:apache-solr-1.4.0  分词器:mmseg4j-1.6.2  词库:sogou-dic ...

  3. 第04项目:淘淘商城(SpringMVC+Spring+Mybatis)【第八天】(solr服务器搭建、搜索功能实现)

    https://pan.baidu.com/s/1bptYGAb#list/path=%2F&parentPath=%2Fsharelink389619878-229862621083040 ...

  4. 商城06——solr索引库搭建&solr搜索功能实现&图片显示问题解决

    1.   课程计划 1.搜索工程的搭建 2.linux下solr服务的搭建 3.Solrj使用测试 4.把数据库中的数据导入索引库 5.搜索功能的实现 2.   搜索工程搭建 要实现搜索功能,需要搭建 ...

  5. solr单机版的搭建

    一.solr单机版的搭建 1.运行环境 solr 需要运行在一个Servlet容器中,Solr4.10.3要求jdk使用1.7以上,Solr默认提供Jetty(ja),本教va写的Servlet容器程 ...

  6. Solr集群搭建详细教程(一)

    一.Solr集群的系统架构 注:欢迎大家转载,非商业用途请在醒目位置注明本文链接和作者名dijia478,商业用途请联系本人dijia478@163.com. SolrCloud(solr 云)是So ...

  7. Solr集群搭建详细教程(二)

    注:欢迎大家转载,非商业用途请在醒目位置注明本文链接和作者名dijia478,商业用途请联系本人dijia478@163.com. 之前步骤:Solr集群搭建详细教程(一) 三.solr集群搭建 注意 ...

  8. 基于Solr和Zookeeper的分布式搜索方案的配置

    1.1 什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud.当一个系统的索引数据量少的时候 ...

  9. JAVAEE——宜立方商城08:Zookeeper+SolrCloud集群搭建、搜索功能切换到集群版、Activemq消息队列搭建与使用

    1. 学习计划 1.solr集群搭建 2.使用solrj管理solr集群 3.把搜索功能切换到集群版 4.添加商品同步索引库. a) Activemq b) 发送消息 c) 接收消息 2. 什么是So ...

随机推荐

  1. DataRead和DataSet的异同

    第一种解释 DataReader和DataSet最大的区别在于,DataReader使用时始终占用SqlConnection(俗称:非断开式连接),在线操作数据库时,任何对SqlConnection的 ...

  2. Connection 对象简介 方法解读 JDBC简介(四)

    通过驱动管理器DriverManager的getConnection方法,可以创建到指定URL的连接     Connection conn = DriverManager.getConnection ...

  3. [十七]JavaIO之CharArrayReader 和 CharArrayWriter

    功能简介 CharArrayReader  和 CharArrayWriter, 字符数组作为数据源的字符读写  CharArrayReader  CharArrayWriter  只需要记住他们的根 ...

  4. Flask入门之完整项目搭建

    一.创建虚拟环境 1,新建虚拟环境 cmd中输入:mkvirtualenv 环境名 2,在虚拟环境安装项目运行所需要的基本模块 pip install flask==0.12.4 pip instal ...

  5. Docker多主机管理(八)--技术流ken

    docker多主机管理 前面我们的实验环境中只有一个 docker host,所有的容器都是运行在这一个 host 上的.但在真正的环境中会有多个 host,容器在这些 host 中启动.运行.停止和 ...

  6. 基于C#程序设计语言的三种组合算法

    目录 基于C#程序设计语言的三种组合算法 1. 总体思路 1.1 前言 1.2 算法思路 1.3 算法需要注意的点 2. 三种组合算法 2.1 普通组合算法 2.2 与自身进行组合的组合算法 2.3 ...

  7. MySQL数据库性能优化(享学课堂听课笔记)

    1.场景: 2张表A表 200W条数据,关联表B表3W条数据,AB有主外键关系. 案例1. 35S 使用关联子查询,查询时间35S 案例2. 19S 使用连表查询 (Left  join ,Inner ...

  8. 内部类访问局部变量为什么必须要用final修饰

    内部类访问局部变量为什么必须要用final修饰 看了大概五六篇博客, 讲的内容都差不多, 讲的内容也都很对, 但我觉得有些跑题了 略叙一下 String s = "hello"; ...

  9. 一文读懂HTTP/2及HTTP/3特性

    摘要: 学习 HTTP/2 与 HTTP/3. 前言 HTTP/2 相比于 HTTP/1,可以说是大幅度提高了网页的性能,只需要升级到该协议就可以减少很多之前需要做的性能优化工作,当然兼容问题以及如何 ...

  10. 01-css的引入方式

    [转]01-css的引入方式 引入css方式(重点掌握) 行内样式 内接样式 外接样式 3.1 链接式 3.1 导入式 css介绍 现在的互联网前端分三层: HTML:超文本标记语言.从语义的角度描述 ...