关于SolrRequestHandler

SolrRequestHandler

SolrRequestHandler一个solr插件,它控制着处理request的逻辑。

 

 

配置

多个handlers (包括是相同的类的实例,却拥有不同的配置) 能够在solrconfig.xml 中配置

  <requestHandler name="foo" default="true" class="my.package.CustomRequestHandler" />
  <requestHandler name="bar" class="my.package.AnotherCustomRequestHandler" />
    <!-- initialization args may optionally be defined here -->
     <lst name="defaults">
       <int name="rows">10</int>
       <str name="fl">*</str>
       <str name="version">2.1</str>
     <lst>
  </requestHandler>

  <requestHandler name="/baz" class="my.package.AnotherCustomRequestHandler">
  <requestHandler name="/update/my-pdf-reader" class="my.package.MyPdfHandler">

Handler Resolution

客户端可以通过带有“gt”这个参数的“/select/ url”请求,也可以通过在solrconfig.xml配置的方式来决定要访问的SolrRequestHandler。对于上面的例子,假设它运行在localhost:8983/solr/上,你能够这样访问

  http://localhost:8983/solr/select/?qt=foo&...
  http://localhost:8983/solr/select/?qt=bar&...
  http://localhost:8983/solr/baz?...
  http://localhost:8983/solr/update/my-pdf-reader?...

Solr是通过下面的步骤去选择一个handler并处理请求的.....

  1. 寻找name属性跟请求中的qt参数匹配的handler

  2. 寻找在配置文件中“default=true”的handler

  3. 寻找在配置文件中name属性为“standad”的handler

  4. 使用StandardRequestHandler的默认实例

注意!如果你的配置文件solrconfig.xml 包含有name属性为"/select", "/update", 或"/admin",那么你的程序将不会沿用标准的请求处理过程,而将会是你自己自定义的逻辑。

实现一个 Request Handler

The easiest way to implement SolrRequestHandler is to extend the RequestHandlerBase class. Also see the list of Request Handlers below for examples.

实现一个SolrRequestHandler 最简单的方法是去扩展 RequestHandlerBase 类。也参考下面的几个Request Handlers

可用的Request Handlers

The Javadocs contain [WWW] a complete list of Request Handlers. Many of which have their own wiki pages...

javadoc文档里面包含有完整的Request Handlers 列表。许多的Request Handlers 都有自己的wiki文档

 

last edited 2008-4-25  by mxsfengg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值