Java Solr总是返回10行

Java Solr总是返回10行,java,solr,Java,Solr,为什么我总是收到10份文件??(当我尝试通过进入web浏览器时,我得到了我想要的) 编辑 事实上,我发现,当以这种方式创建查询时,它是有效的: SolrQuery query = new SolrQuery(); query.setQuery("num:[20 TO 30]&fl=num&rows=50&start=10&sort=num desc"); QueryResponse rsp; rsp = server.query(query); SolrDocum

为什么我总是收到10份文件??(当我尝试通过进入web浏览器时,我得到了我想要的)

编辑 事实上,我发现,当以这种方式创建查询时,它是有效的:

SolrQuery query = new SolrQuery();
query.setQuery("num:[20 TO 30]&fl=num&rows=50&start=10&sort=num desc");
QueryResponse rsp;
rsp = server.query(query);
SolrDocumentList returned = rsp.getResults();
System.out.println(returned.size());

您可以更改
requestHandler
的行为。默认情况下,它返回10行。将
默认值
中的
设置更改为另一个值

SolrQuery query = new SolrQuery().setQuery(
            "num:[20 TO 30]").setSortField("num", ORDER.desc).setRows(5);

这意味着您必须调用显式的
setRows
,并且不能在URL中使用参数。

您可以更改
请求处理程序的行为。默认情况下,它返回10行。将
默认值
中的
设置更改为另一个值

SolrQuery query = new SolrQuery().setQuery(
            "num:[20 TO 30]").setSortField("num", ORDER.desc).setRows(5);

这意味着您必须调用显式的
setRows
,并且不能在URL中使用参数。

我不是Solr专家,但可能
num:[20到30]
不是由浏览器解释的,而是由
SolrQuery
解释的,这告诉查询返回条目20到29(假设端点是独占的)。否,这意味着num字段必须在这些范围内。与结果中的行数无关我不是Solr专家,但浏览器可能不会解释
num:[20到30]
,而是通过
SolrQuery
来解释,这会告诉查询返回条目20到29(假设端点是独占的)。不,这意味着num字段必须在这些范围内。与结果中的行数无关
public SolrQuery setQuery(String query) {
    this.set(CommonParams.Q, query); // whereas CommonParam.Q is 'q'
    return this;
}