solrj是solr的java客户端,用于访问solr索引库。它提供了添加、删除、查询、优化等功能。
配置jar:
/dist/solrj-lib下的所有jar
solr-solrj-5.2.1.jar
server/lib/ext下所有jar
如果Maven来构建项目,添加以下代码到你的pom.xml配置文件中
<dependency>
<artifactId>solr-solrj</artifactId>
<groupId>org.apache.solr</groupId>
<version>1.4.0</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.5.6</version>
</dependency>
@Test
public void createIndex() throws Exception {
// 创建HttpSolrClient
// 参数:表示solr服务的访问基础URL
HttpSolrClient server = new HttpSolrClient("http://localhost:8080/solr");
// 通过server添加SolrInputDocument
SolrInputDocument doc = new SolrInputDocument();
doc.addField("id", "c001");
doc.addField("content_ik", "我爱传智播客22222");
server.add(doc);
// 提交操作
server.commit();
}
@Test
public void deleteIndex() throws Exception {
// 创建HttpSolrClient
// 参数:表示solr服务的访问基础URL
HttpSolrClient server = new HttpSolrClient("http://localhost:8080/solr");
// 通过id删除
// server.deleteById("c001");
// 根据查询条件删除
server.deleteByQuery("id:c001");
// 批量删除
server.deleteByQuery("*:*");
// 提交操作
server.commit();
}
@Test
public void search01() throws Exception {
// 创建HttpSolrClient
// 参数:表示solr服务的访问基础URL
HttpSolrClient server = new HttpSolrClient("http://localhost:8080/solr");
// 创建查询对象
SolrQuery query = new SolrQuery();
// 设置查询条件
query.setQuery("*:*");
// 通过server查询,并返回结果
QueryResponse response = server.query(query);
// 获取查询结果
SolrDocumentList results = response.getResults();
// 匹配出的所有商品记录
long count = results.getNumFound();
System.out.println("匹配出的所有商品记录:" + count);
for (SolrDocument solrDocument : results) {
System.out.println("商品ID:" + solrDocument.get("id"));
System.out.println("商品名称:" + solrDocument.get("product_name"));
System.out.println("商品分类名称:"
+ solrDocument.get("product_catalog_name"));
System.out.println("商品价格:" + solrDocument.get("product_price"));
System.out.println("商品图片地址:" + solrDocument.get("product_picture"));
System.out.println("=======================================");
}
}
相关文章
- 【古月21讲】ROS入门系列(1)——ROS命令工具的使用及创建工作空间和功能包
- RK3568平台开发系列讲解(驱动基础篇)IS_ERR函数的使用
- K3S系列文章-使用AutoK3s在腾讯云上安装高可用K3S集群
- Spider理论系列-request模块的入门使用
- C#程序集系列02,使用记事本查看可执行程序集的IL代码
- flutter系列之:在flutter中使用导航Navigator
- PHP系列 | TP6使用表达式设置数据 Db::raw('end_time')
- flutter系列之:在flutter中使用导航Navigator
- flutter系列之:使用SliverList和SliverGird
- flutter系列之:使用SliverList和SliverGird