我已经使用 DataImportHandler 将我的数据库表索引到 solr 中。现在,当我查询服务器时,它向我显示找到的结果数为 665。但是当我尝试将它分配给像 List itemList = rsp.getBeans(Item.class) 这样的 bean 时,它只给了我 10 个结果。
有人可以帮我解决这个问题。
提前致谢。
当您没有定义要获取的行(文档)的数量时,Solr 默认获取 10 个文档,如docs 中所述。
默认情况下,Solr 仅返回 10 个文档。如果要获取所有文档,则需要更新 Core 的 solrConfig.xml 文件(路径:/solr/server/solr/core_name/conf/solrConfig.xml):
<requestHandler name="/select" class="solr.SearchHandler">
<lst name="defaults">
<str name="echoParams">explicit</str>
<int name="rows">10000000</int> <!--you can update it to some large value that is higher than the possible number of rows that are expected.-->
</lst>
</requestHandler>
您可能需要编辑您的 solrconfig.xml。像这样更改“/select”请求处理程序。
<requestHandler name="/select" class="solr.SearchHandler">
<lst name="defaults">
<str name="echoParams">explicit</str>
<int name="rows">1000</int> <!-- Change this as you want -->
<str name="df">text</str>
</lst>
</requestHandler>