Spring Data Solr 结果文档包含不需要的字段

Spring Data Solr Result Documents with unwanted fields

当我 运行 我的 spring 数据 solr 项目启用调试日志记录时,我注意到很多来自 org.apache.http.wire 的消息。这是正常的,但是,正在传输的大部分数据位于我未与我的结果实体 bean 映射的字段中。我知道你可以告诉 solr 查询哪些字段到 return,但是有没有什么方法可以告诉 spring data solr 同样的事情,这样我就不会传输我不需要的字段?

这是可取的原因是因为其中一些字段中有非常大的数据块(例如文档的全文)。我通常不关心这些字段,但我仍然支付通过电汇传输它们的费用。性能是这里的主要问题。

有什么方法可以注释或以其他方式配置我的结果 bean,以便不传输这些不需要的字段吗?

With Spring Data Repositories for Solr using @Query(fields={...} 允许为生成的 solr 查询定义 fl 参数。请参阅测试中的示例 ProductRepository

可以通过 SimpleQuery.addProjectionOnField("...).

在查询上手动设置 fl