public static void main(String[] args) throws Exception { SolrServer server = new HttpSolrServer("http://localhost:8080/solr/db"); //SolrServer server = new CommonsHttpSolrServer( "http://localhost:8080/solr/db" ); SolrQuery params = new SolrQuery(); params.set("q", "nickname:baoyou"); params.set("start", 0); params.set("rows", Integer.MAX_VALUE); params.set("sort", "userid asc"); params.set("fl", "*,score"); QueryResponse response = null; SolrDocumentList list = null; try { response = server.query(params); } catch (SolrServerException e) { e.printStackTrace(); } if(response!=null){ System.out.println("Search Results: "); list = response.getResults(); System.out.println(list.size()); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } } JSONArray jsonArray = new JSONArray(); for (Iterator<SolrDocument> it = list.iterator(); it.hasNext(); ) { SolrDocument document = it.next(); JSONObject jsonObject = new JSONObject(); for(Iterator<Entry<String, Object>> it2 = document.iterator(); it2.hasNext();) { Entry<String, Object> entry = it2.next(); try { jsonObject.put(entry.getKey(), entry.getValue()); } catch (JSONException e) { throw new Exception("can not convert solr data to json", e); } } jsonArray.put(jsonObject); } System.out.println(jsonArray.toString()); }
- 获取solrserver的实例
- SolrServer server = getSolrServer();
- 构造 SolrQuery
- SolrQuery query = new SolrQuery();
- query.setQuery( "*:*" );
- query.addSortField( "price", SolrQuery.ORDER.asc );
- 向服务器发出查询请求
- QueryResponse rsp = server.query( query );
- 获取结果。
- SolrDocumentList docs = rsp.getResults();
- 想要以javabean的方式获取结果,那么这个javabean必须像之前的例子一样有java注释。
- List<Item> beans = rsp.getBeans(Item.class);
高级用法
solrJ 提供了一组API,来帮助我们创建查询,下面是一个faceted query的例子。
- SolrServer server = getSolrServer();
- SolrQuery solrQuery = new SolrQuery().
- setQuery("ipod").
- setFacet(true).
- setFacetMinCount(1).
- setFacetLimit(8).
- addFacetField("category").
- addFacetField("inStock");
- QueryResponse rsp = server.query(solrQuery);
所有的 setter/add 方法都是返回它自己本身的实例,所以就像你所看到的一样,上面的用法是链式的
捐助开发者
在兴趣的驱动下,写一个免费
的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(右上角的爱心标志,支持支付宝和PayPal捐助),没钱捧个人场,谢谢各位。
谢谢您的赞助,我会做的更好!
相关推荐
solr测试数据,数据文件
SolrTest是一个针对Apache Solr的测试工程,其主要目的是为了验证和演示Solr的核心功能,包括文件导入索引以及实现简单的自动完成和分页查询。Apache Solr是一款开源的企业级搜索平台,它提供了高性能、可扩展的全文...
Solr 索引 测试报告 性能
本性能测试报告针对的是 Solr 7.0 版本,旨在探讨在不同环境下的读写性能,包括单节点部署和 Solr on HDFS 的集群模式。 在环境准备阶段,我们设置了两种不同的配置: 1. 单节点 Solr 服务器,配置了 15GB 内存和 8...
### Solr压力测试报告知识点详解 #### 一、测试背景与目的 - **测试背景**:随着业务量的增长,对Solr的性能提出了更高的要求。本次测试旨在评估Solr在不同环境下的性能表现,特别是在高并发场景下。 - **测试目的...
这个压缩包 "solr-jars.zip" 提供了 Solr 测试所需的 JAR 包,是进行 Solr 相关开发和测试的重要资源。 首先,我们要理解 Solr 的核心组件。Solr 包含以下几个关键部分: 1. **索引库(Index)**:Solr 使用 ...
至于压缩包文件“solr-test-simple”,这可能是博主提供的一个简单的Solr测试实例,包含了一个基础的Solr配置和样例数据,供读者实践和学习如何进行添加和删除操作。在这样的实例中,用户可以通过运行这个测试环境,...
#### 八、启动并测试 Solr 服务 1. **启动 Tomcat**:启动 Tomcat 服务器,等待 Solr 战包自动部署。 2. **测试连接**:通过浏览器访问 `http://127.0.0.1:8080/solr/`,如果页面显示 Solr 的管理界面,则表示部署...
4. **example 目录**:提供了一个预配置的Solr实例,用于快速入门和测试。它包括一个默认的配置集,以及一个简单的数据导入处理程序(DIH)示例,帮助开发者了解如何设置和使用Solr。 5. **docs 目录**:包含了Solr...
- `example`: 示例配置和启动脚本,帮助快速启动和测试Solr实例。 - `lucene`: 内含Lucene库源码,Solr的核心搜索引擎库。 4. **关键类与接口** - `SolrCore`: 代表Solr的单一索引实例,包含了索引、查询和其他...
solr在做检索的时候时常需要得知他的性能参数,此处使用8G内存,双核处理器测试的结果
6. **测试与优化**:在实际应用中,可以通过Solr的Admin界面或API进行分词测试,观察分词效果。根据需求,可以调整 ikanalyzer 的配置,如停用词表、自定义词典等,以优化分词性能和准确性。 ikanalyzer 提供了丰富...
值得注意的是,由于描述中提到对Solr7的支持未经过测试,因此在Solr7或更高版本上使用ikanalyzer可能需要额外的适配工作,比如检查ikanalyzer是否兼容Solr7的新特性和API变更,或者寻找其他的中文分词插件如jieba...
由于ES和Solr都在快速的发展中,版本更新频繁,用户应该基于自己的需求进行实际测试,来判断哪个产品更适合自己的应用场景。对于ES而言,尽管它提供了很多先进的功能,但在使用过程中还是需要不断地关注其文档和社区...
其中,Solrtest是FusionInsight中用于测试Solr性能和功能的工具,它可以方便地验证Solr集群的正确性和性能。 Java客户端是与Solr通信的一种常见方式,它允许开发者通过编写Java代码来执行索引操作、查询、更新和...
测试代码(src/test/java),用于验证Solr操作的正确性。 4. **Solr配置文件**: - **schema.xml**:定义了索引的字段类型和字段,包括分析器、过滤器等,是Solr理解数据的关键。 - **solrconfig.xml**:配置Solr...
* Fusion/Solr测试框架:使用Fusion/Solr工具来测试数据的正确性和可靠性。 * MongoDB测试框架:使用MongoDB数据库来测试数据的正确性和可靠性。 FinTech下的QA测试是指在金融科技领域中,对软件产品或系统进行的...
Solr,全称为Apache Solr,是一款开源的企业级全文搜索引擎,由Apache软件基金会开发并维护。它是基于Java的,能够高效、灵活地处理大量数据的搜索解决方案,广泛应用于网站、电商、文档检索等多个领域。Solr的核心...
#### 四、测试验证 - 重启 Tomcat。 - 访问 `http://localhost:8080/solr/`,如果看到 Solr 的管理界面,则表示 Solr 与 Tomcat 的整合成功。 #### 五、总结 通过上述步骤,我们可以成功地将 Solr 4.10.2 与 ...
6. **测试分词器**:最后,你可以通过Solr的分析界面(通常在`http://your-solr-url/admin/analysis.jsp`)输入文本,检查IK分词器是否正确工作。 在实际应用中,可能还需要根据具体需求调整分词策略,例如添加...