本文介绍如何通过开源Solr Java AP访问Lindorm搜索引擎,请参考以下说明。
获取SDK
- Maven 依赖获取
如果您使用 Maven 做项目构建工具,那么请在 pom.xml 文件的标签中添加solr-solrj 依赖,如下:
<dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-solrj</artifactId> <version>7.3.1</version> </dependency>
- 下载SDK
如果您不使用 Maven,或者不能访问 Maven 仓库,可直接下载SDK
使用示例
- 初始化客户端
//公网访问时,本地调试采用HttpSolrClient模式
//前提:通过控制台"访问控制"添加本机IP到白名单
String httpUrl = "http://***:8983/solr/"; HttpSolrClient solrClient = new HttpSolrClient.Builder(httpUrl).build();
//内网访问建议采用CloudSolrClient模式
//CloudSolrClient是线程安全的,应用多线程可以共享一个对象
String zkHost = "zk1:2181,zk2:2181,zk3:2181/solr" CloudSolrClient solrClient = new CloudSolrClient.Builder(Collections.singletonList(zkHost), Optional.empty()).build();
- 写入数据
List docs = new ArrayList<>(); SolrInputDocument doc = new SolrInputDocument(); doc.addField("id", 1); doc.addField("name_s", "bob"); doc.addField("age_i", 18); docs.add(doc); solrClient.add(docs);
- 查询数据
SolrQuery solrQuery = new SolrQuery("name_s:bob"); QueryResponse response = solrClient.query("your_index", solrQuery); SolrDocumentList documentList = response.getResults(); for(SolrDocument doc : documentList){ String id = (String)doc.getFieldValue("id"); //do something } solrClient.close();
- 常用语法介绍
针对常见的查询场景,可以参考详细的代码示例,点击链接
在文档使用中是否遇到以下问题
更多建议
匿名提交