solrj数据请求流程
来源:互联网 发布:python贪吃蛇源代码 编辑:程序博客网 时间:2024/06/05 15:15
一、写流程add
1、SolrServer的add方法:创建UpdateRequest对象,UpdateRequest.add(docList)。然后调用UpdateRequest.process(SolrServer)方法。
2、UpdateRequest.process():调用SolrServer(一般是HttpSolrServer)的request方法 (这里设置了ElaspedTime的开始时间)。
3、HttpSolrServer.request(SolrRequest request): 创建HttpPost,并获得request中的ContentStream(即把request中的documents变成<add><doc><field boost="1.0">XXX</field></doc>....</add>的形式) 。然后把ContentStream.getStream()将字符串变成字节流(new ByteArrayInputStream( str.getBytes(DEFAULT_CHARSET) ))放到post请求中,通过httpClient发送给solr服务器。
4、获得solr服务器的响应后的结果是字节流,需要使用ResponseParser(默认是BinaryResponseParser)对结果的字节流进行解析成相应的字符串,并放到UpdateResponse中,并设置response的ElaspedTime。
二、query流程
1、SolrServer的query方法:创建QueryRequest对象, QueryRequest(QueryParam)。然后调用QueryRequest.process(SolrServer)方法。
2、QueryRequest.process(SolrServer):调用SolrServer(一般是HttpSolrServer)的request方法
3、HttpSolrServer.request(SolrRequest request): 创建HttpGet。
4、获得solr服务器的响应后的结果是字节流,需要使用ResponseParser(默认是BinaryResponseParser)对结果的字节流进行解析成相应的字符串,并放到QueryResponse中。
//QueryResponse构造: public QueryResponse( NamedList<Object> res , SolrServer solrServer){ this.setResponse( res ); this.solrServer = solrServer; }
- solrj数据请求流程
- solrj 查询SolrServer的一般流程
- 常见从网络上请求数据流程
- 一次请求中数据的传递流程
- solrJ
- SolrJ
- solrJ
- solr6使用solrJ做XML数据导入
- Solr6使用SolrJ导入JSON数据
- android4.0 webkit 请求网络数据的调用流程
- iOS 网络请求接收数据流程 (NSURLRequest&NSURLConnection)
- HttpURLConnection与HttpClient的Get与Post请求数据流程
- Glide 4.x之请求网络图片数据流程解析
- Solrj实时更新遇到数据变化的问题
- solr facet查询及solrj 读取facet数据
- solr facet查询及solrj 读取facet数据
- solrJ的使用:适用于地理信息数据的查询匹配
- solr6.6solrj编程,参数意义以及数据导入
- 一个理解wait()与notify()的例子
- 如何编译一个linux下的驱动模块
- c++实现windows和linux之间跨平台的方式
- 第一个android访问java编写的webservice程序
- 设置Qt应用程序图标及应用程序名
- solrj数据请求流程
- css3样式的经典实现
- 9种常见的Java不规范代码
- HTML5+CSS3(二)
- 获取本机的IP地址
- oracle存储过程学习经典[语法+实例+调用]
- 云寻觅中文分词 (Yunxunmi Chinese Word Segmentation) ,词汇440万,10万字文章分词并计算频率不超过1秒
- python字符串操作(序)
- ZOJ3633 Alice's present 线段树离线 || 主席树在线