【Solr专题之九】SolrJ教程 分类: H4_SOLR/LUCENCE 2014-07-28 14:31 2351人阅读 评论(0) 收藏
一、SolrJ基础
1、相关资料
API:http://lucene.apache.org/solr/4_9_0/solr-solrj/
apache_solr_ref_guide_4.9.pdf:Client APIs---Using SolrJ
http://wiki.apache.org/solr/Solrj
solr in action:Using the SolrJ client library to add documents from Java, Using SolrJ from Java
2、
二、SolrJ用于索引
三、SolrJ用于搜索
package org.jediael.ui; import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.SolrServer;
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;
import org.jediael.util.Constants; public class ReturnResult { public static void main(String[] args) throws Exception { String serverUrl = (args != null && args.length > 0) ? args[0]
: "http://" + Constants.IP + ":" + Constants.PORT
+ "/solr/collection1";
SolrServer solrServer = new HttpSolrServer(serverUrl); // 读取输入参数作为查询关键字,若无关键字,则查询全部内容。
String queryString = (args != null && args.length > 1) ? args[1]
: "*:*";
SolrQuery solrQuery = new SolrQuery(queryString);
// 定义使用哪个request
// handler进行搜索,若无指定,则使用默认的handler.默认是/select。若solrConfig.xml中无/select这个searchHandler,则返回以下错误
solrQuery.set("qt", "/search");
// solrQuery.setRows(5);
QueryResponse resp = solrServer.query(solrQuery); SolrDocumentList hits = resp.getResults(); for (SolrDocument doc : hits) {
for (String fieldName : doc.getFieldNames()) {
System.out.println(fieldName + " : " + doc.getFieldValue(fieldName) + " ");
}
System.out.println("------------------------Next Document--------------------------------");
} }
}
1、使用SolrJ进行搜索,基本步骤如下:
(1)创建一个SolrServer。
(2)创建一个SolrQuery,并使用set(String,String)进行参数的配置。
(3)调用SolrServer.query(solrQuery),返回QueryResponse。
(4)对QueryResponse进行分析处理。
2、以下语句用于指定使用哪个request handler进行搜索,若无指定,则使用默认的handler.默认是/select。若solrConfig.xml中无/select这个searchHandler,则返回以下错误
<span style="font-family: Arial, Helvetica, sans-serif;">solrQuery.set("qt", "/search");</span>
HTTP Status 404 - /solr/collection1/select
type Status report
message /solr/collection1/select
description The requested resource is not available.
Apache Tomcat/7.0.54
版权声明:本文为博主原创文章,未经博主允许不得转载。
【Solr专题之九】SolrJ教程 分类: H4_SOLR/LUCENCE 2014-07-28 14:31 2351人阅读 评论(0) 收藏的更多相关文章
- Mahout快速入门教程                                                    分类:            B10_计算机基础             2015-03-07 16:20    508人阅读    评论(0)    收藏
		
Mahout 是一个很强大的数据挖掘工具,是一个分布式机器学习算法的集合,包括:被称为Taste的分布式协同过滤的实现.分类.聚类等.Mahout最大的优点就是基于hadoop实现,把很多以前运行于单 ...
 - MS SQL数据批量备份还原(适用于MS SQL 2005+)                                                    分类:            SQL Server 数据库             2015-03-10 14:32    103人阅读    评论(0)    收藏
		
我们知道通过Sql代理,可以实现数据库的定时备份功能:当数据库里的数据库很多时,备份一个数据库需要建立对应的定时作业,相对来说比较麻烦: 还好,微软自带的osql工具,比较实用,通过在命令行里里输入命 ...
 - A Plug for UNIX                                                       分类:            POJ             图论             函数             2015-08-10 14:18    2人阅读    评论(0)    收藏
		
A Plug for UNIX Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 14786 Accepted: 4994 Desc ...
 - RedHat Enterprise Linux 6.4使用Centos 6 的yum源                                                    分类:            服务器搭建             Nginx             2015-07-14 14:11    5人阅读    评论(0)    收藏
		
转载自:http://blog.sina.com.cn/s/blog_50f908410101cto6.html 思路:卸载redhat自带yum,然后下载centos的yum,安装后修改配置文件 1 ...
 - 使用Broadcast实现android组件之间的通信                                                    分类:            android             学习笔记             2015-07-09 14:16    110人阅读    评论(0)    收藏
		
android组件之间的通信有多种实现方式,Broadcast就是其中一种.在activity和fragment之间的通信,broadcast用的更多本文以一个activity为例. 效果如图: 布局 ...
 - 使用JavaScriptSerializer序列化集合、字典、数组、DataTable为JSON字符串                                                       分类:            前端             数据格式             JSON             2014-10-30 14:08    169人阅读    评论(0)    收藏
		
一.JSON简介 JSON(JavaScript Object Notation,JavaScript对象表示法)是一种轻量级的数据交换格式. JSON是"名值对"的集合.结构由大 ...
 - vs2008 多人同时开发项目时的代码注释规范格式                                                    分类:            C#小技巧             2014-04-23 14:12    297人阅读    评论(0)    收藏
		
多人同时开发一个项目,区分项目的那个窗体是谁开发的,例:下面的格式 /************************************************ 模块:服务器设置 ...
 - 代码对齐                                                    分类:            C#小技巧             2014-04-17 14:45    166人阅读    评论(0)    收藏
		
开发项目时,为了是代码层次清晰.美观,常常需要调整多行,使之对齐.在网上也看到一些方法,感觉不好用,偶尔发现一个小技巧. (1)多行代码同时右移 同时选中几行,按"Tab"键,就会 ...
 - mysql快速入门                                                    分类:            B6_MYSQL             2015-04-28 14:31    284人阅读    评论(0)    收藏
		
debian方式: apt-get install mysql-server-5.5 mysql -u root -p redhat安装方式 一.下载并解压 $ wget http://cdn ...
 
随机推荐
- hdu 1233 还是畅通project (克鲁斯卡尔裸题)
			
还是畅通project Time Limit: 4000/2000 MS (Java/Others) M ...
 - android图像处理(3)浮雕效果
			
这篇将讲到图片特效处理的浮雕效果.跟前面一样是对像素点进行处理,算法是通用的. 算法原理:用前一个像素点的RGB值分别减去当前像素点的RGB值并加上127作为当前像素点的RGB值. 例: ABC 求B ...
 - DG动态性能视图详解
			
V$LOG 显示CONTROLFILE记录的LOG FILE信息. 列名 描述 GROUP# 日志组号 THREAD# 日志线程号 SEQUENCE# ...
 - JS / CSS 实现的便签记录本
			
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
 - hdu 2795 Billboard(线段树单点更新)
			
Billboard Time Limit: 20000/8000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
 - iOS Threading编程指南 官方文档翻译第一篇(序言)
			
序言 Thread是能够使多个code paths 在同一个APP内并发运行的几种技术之一.虽然新的技术为并发运行提供了先进.高效的工具(例如operation 对象和GCD),但是OS X和iO ...
 - oracle expdp 备份脚本
			
#!/bin/bash#Oracle 环境变量 NLS_LANG=AMERICAN_AMERICA.AL32UTF8 ORACLE_SID=zgw ORACLE_BASE=/opt/oracle OR ...
 - 代码高亮显示——google-code-prettify
			
先放着,搭建完HEXO博客再来写这篇. https://code.google.com/archive/p/google-code-prettify/
 - 【hdu 1403】Longest Common Substring
			
[链接]h在这里写链接 [题意] 求两个串的最长公共子串. [题解] Sa[i]表示的是字典序为i的后缀的起始位置. 可以把两个字符串合在一起(中间用一个比'z'大的字符分割); 则如果Sa[i-1] ...
 - springboot 使用FreeMarker模板(转)
			
在spring boot中使用FreeMarker模板非常简单方便,只需要简单几步就行: 1.引入依赖: <dependency> <groupId>org.springfra ...