第四步 eclipse实现solr客户端

1、创建solr客户端:

先导入包,把apache-solr-4.0.0\dist下的apache-solr

-dataimporthandler-4.0.0.jar 和 apache-solr-dataimporthandler-extras-4.0.0.jar复制到

WebRoot\WEB-INF\lib下

或是pom.xml文件添加

<!-- -搜索依赖 -->
<dependency>
    <groupId>org.apache.solr</groupId>
    <artifactId>solr-solrj</artifactId>
    <version>4.7.2</version>
</dependency>

2、创建一个SolrJSearcheDemo类

import java.net.MalformedURLException;

import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.SolrServer;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.impl.HttpSolrServer;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.common.SolrDocument;
import org.apache.solr.common.SolrDocumentList;

public class SolrJSearcheDemo {

	 /**
     * Solr访问地址
     */
    private static final String SOLR_URL ="http://localhost:8080/solr/";
    
    // 通过网络地址获取SolrServer对象
    public SolrServer getSolrServer() throws MalformedURLException {
        return new HttpSolrServer(SOLR_URL);
    }
    
    // 查询方法
    public void search(String key) throws MalformedURLException{
        SolrServer solrServer = getSolrServer();
        // 查询对象
        SolrQuery query = new SolrQuery(key);
        query.setQuery(key);    
        try {
            query.setHighlight(true)
                //设置开头
                .setHighlightSimplePre("<span class=’highlight’>") 
                .setHighlightSimplePost("</span>") //设置结尾 
                .setStart(0)
                .setRows(10);//设置行数 
            //设置高亮的哪些区域   
            query.setParam("hl.fl", "content");
            QueryResponse response=solrServer.query(query);
            SolrDocumentList list=response.getResults();
            
            System.out.println("高亮显示:");
            for(SolrDocument sd:list){
                String id=(String) sd.getFieldValue("id");
                if(response.getHighlighting().get(id)!=null){
                    System.out.println(response.getHighlighting().get(id).get("content"));
                }
            }
            
            System.out.println("——————————————");
            
            SolrDocumentList docs = response.getResults();
            System.out.println("文档个数:" + docs.getNumFound());
            System.out.println("查询时间:" + response.getQTime()); 
            System.out.println("——————————————–");
            
            for (SolrDocument doc : docs) {
            
                // 获取查询返回结果
                String id = doc.getFieldValue("id").toString();
                String title = doc.getFirstValue("title").toString();
                String content = doc.getFirstValue("content").toString();
                   
                // 打印查询结果   
                System.out.println("编号:"+id);
                System.out.println("标题:"+title);
                System.out.println("内容: "+content);
           
                System.out.println("—————————————-");
                   
            }
  
        } catch (SolrServerException e) {
             e.printStackTrace();
        }
    }

    public static void main(String[] args) throws MalformedURLException {

        // 创建一个SolrJSearcheDemo对象   
        SolrJSearcheDemo sj = new SolrJSearcheDemo();   
        // 查询条件   
        String Query ="生活";
        // 调用查询方法 
        sj.search(Query);
    }

}

时间: 2024-07-29 16:48:19

第四步 eclipse实现solr客户端的相关文章

ICE学习第四步-----客户端请求服务器返回数据

这次我们来做一个例子,流程很简单:客户端向服务器发送一条指令,服务端接收到这条指令之后,向客户端发送数据库中查询到的数据,最终显示在DataGridView上. 根据上一篇文章介绍的Slice语法,我们先来定义ICE文件.我定义两个ICE文件,一个用来描述测试数据库表中属性相关信息,另一个则是请求数据的方法. 结构如下:    定义结构体,和数据库中表的列对应,添加序列(相当于数组类型). 在获取表的方法中注意要记得#include带有结构的ice文件,并把接口函数的返回值类型写成之前定义的数组

[Nutch]Nutch+Eclipse+Tomcat+Solr+Cygwin搭建Windows开发环境

1.环境准备 1.1 软件 操作系统:Windows 10专业版 ANT版本:apache-ant-1.9.7-bin.zip JDK版本:jdk-8u65-windows-x64.exe Solr版本:solr-4.9.1.zip Nutch版本:apache-nutch-1.6-bin.tar.gz Tomcat版本:apache-tomcat-9.0.0.M8-windows-x64.zip Eclipse版本:eclipse-jee-mars-1-win32-x86_64.zip 下面是

Adnroid开发环境搭建(四步搞定)

新手博友,多多关照 下面给大家介绍JDK Eclipse AndroidSDK ADT环境搭建,安装教程 第一步.安装JDK: 第二步.安装Eclipse: 第三步.下载并安装AndroidSDK: 第四步.为Eclipse安装ADT插件 第一步,安装JDK  首先复制链接(http://www.oracle.com/technetwork/java/javase/downloads/index.html)进入java官网 接下来进入下面界面 申明一下:进入JDK版本选择界面后,找到适合自己电脑

Hadoop核心组件:四步通晓HDFS

Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件上的分布式文件系统,它提供高吞吐量来访问应用程序的数据,适合那些有着超大数据集的应用程序,那么在实际应用中我们如何来操作使用呢? 一.HDFS操作方式: 1.  命令行操作 –FsShell:$ hdfs dfs 2. 其他的计算框架-如spark 通过URI,比如: hdfs://nnhost:port/file-,调用HDFS的协议.主机.端口或者对外提供的服务媒.以及文件,在spark的程序中实现对HDFS的访问. 3.  其

如何学好编程(三)----四步成为编程精英

如何才能在编程领域迅速牛起来呢?要想成为编程达人,可以分为四步走. 第一步:海量观摩与学习,快速找到章法. 编程需要很多的知识,不同的语言有不同的语法,有不同的应用环境.学习编程的第一步,就是我们各种编程的基础知识,包括数据结构,基础语法,网络知识概念等.然后通过别人写的例子进行学习,快速理解各种语法规则等.简单点,就是多看书,多学习. 第二步:找机会大量练手,以数量取胜 编程是需要大量实践的,理论再好,不会动手也不可以.当你在第一步的基础上时,你通过海量的观摩和学习,现在就是要讲你学习的给输出

java入门第四步之应用服务器的安装(Tomcat)【转】

首先打开myeclipse,在myeclipse菜单栏下面有两个按钮: 左边的按钮是进行项目的部署的(即将项目部署到服务器上),右边的按钮是进行服务器的启动的,如果你安装了tomcat服务器,那你就可以在右边按钮点击的下拉框中 找到对应的服务器, 下面我来介绍下Tomcat服务器的安装(也不能叫安装,就是引入下): 点击菜单栏的Window---->选择Preferences----->在左边的菜单栏中选择MyEclipse---->servers----->tomcat 然后根据

四步让你的网站秒开,wordpress框架为例子,其他框架道理类似

我这里以wordpress框架制作的网站为例子,效果可以看看我的网站,香港的垃圾主机199一年2M带宽,速度也能秒开,不信试试效果33小游戏 我的是wordpress制作的网站,大家都知道WP各种臃肿卡慢,其实这些都是可以改进的,关于如何google字体和Gravatar头像被墙和精简臃肿的头部方法不做解释,自行百度. 第一步:图片压缩,延迟加载.这个给个图片超级压缩网站https://tinypng.com/图片质量基本不变,能少一半大小.其次是延迟加载,特别是内容站建议不      要一次性

四步完成ajax的使用

什么是ajax? ajax(异步javascript xml) 能够刷新局部网页数据而不是重新加载整个网页. 如何使用ajax? 第一步,创建xmlhttprequest对象,var xmlhttp =new XMLHttpRequest();XMLHttpRequest对象用来和服务器交换数据.var xhttp;if (window.XMLHttpRequest) { //现代主流浏览器 xhttp = new XMLHttpRequest(); } else { //  针对浏览器,比如I

快速入门git第四步

一.获得git仓库有两个来源:1.在现有的目录下,通过git add 导入文件创建新的git仓库 2.从以后的git仓库下克隆下代码 1.在工作目录下新建git仓库,使项目进行了git的管理,只需要进行下列的命令: cd 文件名(进入目录)或者直接建立一个文件夹(mkdir zhen/cd zhen/) git init git init 做了写什么? 该命令的叫做初始化,初始化目录里面的文件和结构,在该目录下胡出现一个.git的文件,该文件含有git所需要的 资源和数据 2.克隆代码: git