Java 带列表的Solr查询?

Java 带列表的Solr查询?,java,solr,Java,Solr,如何将列表输入到solr查询中 我正在尝试执行与列表匹配的solr查询 例如,我有一个类似于下面的数据结构,其中someList是一个可以包含任意数量的字符串项的列表 { someKey:someValue, someList: [ "item1", "item2" ] } 我想返回someList中具有特定值的所有记录。因此,如果我的查询是q=someKey:*和someList:items,我应该只接收那些列表someList与我的查询中的列表items匹配的记录 我尝试了与

如何将列表输入到solr查询中

我正在尝试执行与列表匹配的solr查询

例如,我有一个类似于下面的数据结构,其中
someList
是一个可以包含任意数量的字符串项的列表

{
 someKey:someValue,
 someList: [
  "item1",
  "item2"
 ]
}
我想返回
someList
中具有特定值的所有记录。因此,如果我的查询是
q=someKey:*和someList:items
,我应该只接收那些列表
someList
与我的查询中的列表
items
匹配的记录

我尝试了与下面的方法类似的方法,但是查询的行为就像是将“*”传递给查询注释中的
someList
。也就是说,查询被错误地生成为
q=someKey:someValue和someList::
,而不是
q=someKey:someValue和someList:items

@Query("someKey:?0* AND someList:?1*")
public Page<Results> queryMethod(
        String someValue,
        List<String> items,
        Pageable pageable);
@Query(“someKey:?0*和someList:?1*”)
公共页面查询方法(
字符串someValue,
清单项目,
可寻呼(可寻呼);
此方法位于扩展SolrCrud存储库的接口中


如何将列表输入到solr查询中?

不传递
列表项
只传递空格分隔的值,如下所示:

someList:(item1 item2)
更改您的方法:

@Query("someKey:?0* AND someList:?1*")
public Page<Results> queryMethod(
        String someValue,
        String items, <<<----
        Pageable pageable);
@Query(“someKey:?0*和someList:?1*”)
公共页面查询方法(
字符串someValue,

字符串项,但列表查询大小不确定。可以是任意数量的项。