摘要: Solr在查询的时候,用到了QueryParser对用户输入做解析,solr默认使用的解析器是lucene
,被称之为Standard Query Parser。
Standard Query Parser支持原生的查询语法,使你可以方便地构造结构化查询语句。当然,它还有不好的,就是容错比较差,总是把错误抛出来,而不是像
dismax
一样消化掉。
Standard Query Parser查询响应
默认情况下,响应体被一个<result>
包裹,如果还指定了debug
参数,则会返回<lst>
包裹dedug 信息。
某一次的查询HTTP请求:
http://localhost:8080/solr/core/select?q=id:1900589240
返回:
<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">0</int>
<lst name="params">
<str name="q">id:1900589240</str>
<str name="indent">on</str>
</lst>
</lst>
<result name="response" numFound="1" start="0">
<doc>
<str name="id">1900589240</str>
<str name="title_s">她的国</str>
<str name="author_s">寇研</str>
<str name="category_s">随笔</str>
<int name="page_i">3600</int>
<double name="price_d">999.0</double>
<date name="odertime_dt">2015-10-02T21:47:04Z</date>
<str name="publisher_s">不知名出版社</str>
<str name="type_s">图书</str>
<str name="description_s">是千百年来一直被遮蔽、扭曲的形象。《她的国》,试图把被遮蔽的展示出来,把被扭曲的还原回来。</str>
<long name="_version_">1552794664702050304</long>
</doc>
</result>
</response>