solrj java_java – 在Solrj中执行MLT(更像是这样)查询
我正在使用最近的Solr 4.2.1 solrj库.
我试图从java程序执行MLT查询.只要我只在stream.body中提供小块,它就可以正常工作,但这种方法无法实现我的目的.
当我尝试使用ContentStream时,我没有收到回复,当我执行solr.query时,它会发出另一个请求.
看起来服务器正在使我的solr.request()确定.感谢任何指针.
哦,我正在和solr 3.6.1交谈
这是我到目前为止:
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.common.SolrDocumentList;
import org.apache.solr.common.params.ModifiableSolrParams;
import org.apache.solr.common.util.ContentStream;
import org.apache.solr.common.util.ContentStreamBase;
import org.apache.solr.common.util.NamedList;
import org.apache.solr.client.solrj.*;
import org.apache.solr.client.solrj.impl.HttpSolrServer;
import org.apache.solr.common.*;
import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.net.MalformedURLException;
import org.apache.solr.client.solrj.request.AbstractUpdateRequest;
import org.apache.solr.client.solrj.request.ContentStreamUpdateRequest;
import org.apache.solr.client.solrj.util.ClientUtils;
public class SolrJSearcher {
public static void main(String[] args) throws MalformedURLException, SolrServerException {
HttpSolrServer solr = new HttpSolrServer("http://localhost:8983/solr");
ModifiableSolrParams params = new ModifiableSolrParams();
String mltv[] = {"Big bunch of text for testing - redacted for brevity"};
String dvalues[] = {"mlt"};
String svalues[] = {"0"};
ContentStreamUpdateRequest up = new ContentStreamUpdateRequest("/mlt");
ContentStream cs = new ContentStreamBase.StringStream(mltv[0]);
up.addContentStream( cs);
SolrQuery theQuery = new SolrQuery();;
theQuery.set("qt", dvalues);
up.setParam("start", "0");
try {
solr.request(up);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
QueryResponse response = solr.query(theQuery);
SolrDocumentList results = response.getResults();
for (int i = 0; i < results.size(); ++i) {
System.out.println(results.get(i));
}
}
}
solrj java_java – 在Solrj中执行MLT(更像是这样)查询相关推荐
- 在excel中执行Sql语句,实现复杂查询
引子 Excel过滤与查找数据的功能很强,但如果是非常复杂的查询还是用SQL语句来得直接.但这需要有一些数据库的专业知识. 实事上excel支持对Sheet上的数据进行sql查询,这时Sheet名就是 ...
- ACCESS中执行sql语句
ACCESS中执行sql语句 简单的说:查询--新建-- 设计视图--选择表或者不选--右键新建SQL视图 不会就看图 access采用sql语句与sql的区别 Access中提供查询对象,在设计时可 ...
- 有没有更好的方法在JavaScript中执行可选的函数参数? [重复]
本文翻译自:Is there a better way to do optional function parameters in JavaScript? [duplicate] This quest ...
- 在 ASP.NET 中执行 URL 重写
在 ASP.NET 中执行 URL 重写 发布日期: 8/23/2004 | 更新日期: 8/23/2004 Scott Mitchell 4GuysFromRolla.com 适用范围: Micro ...
- python中执行linux命令(调用linux命令)_Python调用Linux bash命令
import subprocess as sup # 以下注释很多(为了自己以后不忘), 如果只是想在python中执行Linux命令, 看前5行就够了 # 3.5版本之后官方推荐使用sup.run ...
- 《Android游戏开发详解》——第1章,第1.6节函数(在Java中称为“方法”更好)...
本节书摘来自异步社区<Android游戏开发详解>一书中的第1章,第1.6节函数(在Java中称为"方法"更好),作者 [美]Jonathan S. Harbour,更 ...
- 如何在SQL SELECT中执行IF…THEN?
如何在SQL SELECT语句中执行IF...THEN ? 例如: SELECT IF(Obsolete = 'N' OR InStock = 'Y' ? 1 : 0) AS Saleable, * ...
- php的foreach循环执行过程分析以及循环中执行unset()的一些问题
文章目录 一.前言 二.foreach的执行过程 1.关于版本不同的foreach变化 2.关于引用计数 3.探寻foreach的运行过程 三.foreach中执行unset()的问题 1.当我们是为 ...
- python调用shell命令-在Python中执行shell命令的6种方法,你都知道吗?
原标题:在Python中执行shell命令的6种方法,你都知道吗? Python经常被称作"胶水语言",因为它能够轻易地操作其他程序,轻易地包装使用其他语言编写的库.今天我们就讲解 ...
最新文章
- 京东智能情感客服挽救一名学生生命,“可信赖的AI”用温暖前行
- 两对光纤收发器用网线连接_光纤那么快,路由器和电脑之间为何不用光纤连接,反而用普通网线...
- js判断是由含有a节点_怎么判断某个dom节点是否包含某个dom节点?
- Linux系统编程:lseek扩展文件大小失败原因分析
- 关于JAVA的一道面试题
- 春节档电影评分出炉:韩寒《四海》垫底仅有 5.6 分,他居然第一
- java glassfish_java - Tomcat,JBoss和Glassfish有什么区别?
- 88.合并两个有序数组(力扣leetcode)博主可答疑该问题
- opencv c++讲解jzg mxy tyd_python看代码就行
- 成绩出来了!700 分也上不了清华,究竟该如何从内卷中走出来!肺腑之言,建议转发给亲戚朋友们!
- MySQL之SQL语句实现将三个查询结果集拼接成一个表
- 戴尔t620服务器怎么进bios设置u盘启动(戴尔进入u盘启动设置)
- 分布式自增序列id的实现(二) ---分布式序号生成器---基于Redis的自增功能
- 数学专业偏向算法智力题的面试题
- 开发应用多开实现方式_应用三种开发方式来加速您的组织
- python求斜率_如何计算numpy中的斜率
- Keep熬过冬天,但互联网健身的生意依然不好做
- Django源码cookie解读:关于中文cookie会被吞掉并截断的问题。
- 宝来客:结婚率创新低,黄金珠宝销售受影响
- HTML+CSS仿写京东页面附代码(web前端大作业)