solr q查询容错性

当solr接收没q参数(或q参数值为空)请求时,会报错。对开发调试时才比较有用,但实际运行环境报错就不太好了,java异常可能有点性能消耗,那干脆就返回正常的结果好了(只是结果里没有找到的数据)。

solr 1.3 可以写个组件去做。判断到空的时候,加一个q参数,其值为在索引里没有的数据。这样就可以返回没有数据的结果。

其实这样实现还是比较麻烦。可以在 solrconfig.xml的requestHandler里加一个默认参数。如q=abcdefghijk。配置如下:

<requestHandler name="standard" class="solr.SearchHandler" default="true">     

<lst name="defaults">       

<str name="q">abcdefghijk</str>   

 </lst>  

</requestHandler>  

这样的话查询容错性比较好,查询请求没有带q参数也可,q参数值为空也可。tomcat不会报错,还可以返回结果。

你可能感兴趣的:(Solr,solr q查询容错性)