solrj设置查询字段
solrj setting query fields
我正在使用下面有效的 solr 查询
https://host:port/solr/ref_cm/select?defType=edismax&q=abc&qf=a+b+c+d
我可以知道如何使用 solrj 进行设置吗?我在下面尝试使用 "qf" 但它不起作用(即使从 url 它起作用)
final Map<String, String> queryParamMap = new HashMap<String, String>();
queryParamMap.put("q", query);
queryParamMap.put("defType", "edismax");
queryParamMap.put("qf","a, b, c, d");
感谢任何指点
您可以尝试以下部分代码。它应该适合你。
代码 queryParamMap.put("qf", "a b c d")
可以替代 queryParamMap.put("qf","a, b, c, d")
。
完整代码如下所示。
ModifiableSolrParams queryParamMap= new ModifiableSolrParams();
queryParamMap.set("q", "test");
queryParamMap.set("defType", "edismax");
queryParamMap.set("qf", "a b c d");
QueryResponse qResp = cloudSolrClient.query(queryParamMap);
SolrDocumentList docList = qResp.getResults();
int numFound = (int) docList.getNumFound();
我正在使用下面有效的 solr 查询
https://host:port/solr/ref_cm/select?defType=edismax&q=abc&qf=a+b+c+d
我可以知道如何使用 solrj 进行设置吗?我在下面尝试使用 "qf" 但它不起作用(即使从 url 它起作用)
final Map<String, String> queryParamMap = new HashMap<String, String>();
queryParamMap.put("q", query);
queryParamMap.put("defType", "edismax");
queryParamMap.put("qf","a, b, c, d");
感谢任何指点
您可以尝试以下部分代码。它应该适合你。
代码 queryParamMap.put("qf", "a b c d")
可以替代 queryParamMap.put("qf","a, b, c, d")
。
完整代码如下所示。
ModifiableSolrParams queryParamMap= new ModifiableSolrParams();
queryParamMap.set("q", "test");
queryParamMap.set("defType", "edismax");
queryParamMap.set("qf", "a b c d");
QueryResponse qResp = cloudSolrClient.query(queryParamMap);
SolrDocumentList docList = qResp.getResults();
int numFound = (int) docList.getNumFound();